Meta tags:
Headings (most frequently used words):
tcp, checksum, control, connection, data, for, transmission, protocol, segment, of, based, retransmission, contents, historical, origin, network, function, structure, operation, vulnerabilities, ports, development, hardware, implementations, wire, image, and, ossification, performance, acceleration, debugging, alternatives, computation, see, also, notes, references, bibliography, further, reading, external, links, establishment, termination, resource, usage, transfer, maximum, size, selective, acknowledgments, window, scaling, timestamps, out, band, forcing, delivery, denial, service, hijacking, veto, deprecated, proposals, ipv4, ipv6, offload, requests, comments, other, documents, reliable, error, detection, flow, congestion, duplicate, ack, timeout,
Text of the page (most frequently used words):
the (860), tcp (342), and (271), for (145), data (131), rfc (116), that (105), protocol (90), connection (80), from (79), this (75), with (68), number (68), #control (65), are (64), #network (63), packet (62), sequence (62), doi (59), option (59), transmission (58), can (55), ietf (52), edit (49), header (49), congestion (47), segment (46), checksum (45), window (44), sender (43), not (42), may (41), internet (40), packets (39), when (39), bit (37), acknowledgment (36), 17487 (36), used (36), receiver (36), retrieved (35), original (35), received (35), ack (33), server (32), syn (31), length (31), was (30), size (30), archived (29), has (29), time (28), which (28), address (28), client (28), use (27), end (27), sent (27), bits (27), port (26), retransmission (26), transport (25), layer (24), over (24), set (24), 2017 (23), field (23), bytes (23), lost (23), other (22), each (22), destination (22), value (22), connections (22), all (21), communication (21), pdf (21), application (21), numbers (21), also (21), have (21), only (21), computer (20), open (20), based (20), fast (19), been (19), networks (19), one (19), host (19), such (19), rtt (19), performance (18), algorithm (18), more (18), loss (18), where (18), after (18), into (18), byte (18), 2020 (17), see (17), between (17), stream (17), some (16), source (16), but (16), delivery (16), out (16), using (15), protocols (15), 2013 (15), sack (15), selective (15), options (15), before (15), these (15), uses (15), its (15), applications (15), receiving (15), transfer (15), duplicate (15), handshake (15), first (15), send (15), flag (15), link (14), multipath (14), 2019 (14), 9293 (14), will (14), two (14), offset (14), any (14), then (14), order (14), mss (14), waiting (14), segments (14), last (13), 978 (13), isbn (13), acm (13), 2016 (13), 2018 (13), timer (13), termination (13), way (13), acknowledgments (13), sending (13), flow (13), http (12), 1145 (12), ipv6 (12), high (12), ecn (12), program (12), they (12), new (12), service (12), kind (12), known (12), user (12), maximum (12), request (12), 2021 (11), tls (11), s2cid (11), spurious (11), retransmissions (11), systems (11), reliable (11), establishment (11), allman (11), reordering (11), version (11), specification (11), rate (11), linux (11), implementations (11), timestamp (11), ipv4 (11), initial (11), ien (11), must (11), example (11), due (11), both (11), there (11), three (11), september (10), 1974 (10), implementation (10), well (10), quic (10), 2014 (10), december (10), details (10), operating (10), detection (10), cerf (10), information (10), attack (10), urgent (10), scaling (10), avoidance (10), should (10), designed (10), 000 (10), being (10), fields (10), computation (10), however (10), cannot (10), during (10), typically (10), side (10), ports (10), timestamps (10), receive (10), fin (10), about (9), sigcomm (9), review (9), david (9), 2003 (9), next (9), wireless (9), operation (9), them (9), most (9), system (9), state (9), model (9), error (9), datagram (9), retransmitted (9), through (9), changes (9), since (9), main (9), wikipedia (8), february (8), different (8), robert (8), richard (8), wesley (8), august (8), march (8), michael (8), communications (8), april (8), ossification (8), latency (8), blanton (8), october (8), extension (8), acknowledgement (8), udp (8), default (8), denial (8), vulnerabilities (8), recovery (8), cause (8), zeroes (8), following (8), scale (8), file (8), avoid (8), provides (8), socket (8), significant (8), threshold (8), single (8), block (8), remote (8), senders (8), timeout (8), toggle (7), available (7), links (7), defined (7), articles (7), related (7), resources (7), net (7), 1109 (7), ieee (7), january (7), against (7), second (7), conference (7), networking (7), ambiguity (7), traffic (7), mark (7), support (7), path (7), services (7), multiple (7), addresses (7), 2011 (7), hosts (7), transmitted (7), checksums (7), hardware (7), because (7), needed (7), 2010 (7), web (7), security (7), windows (7), routing (7), many (7), octets (7), 128 (7), octet (7), include (7), indicates (7), words (7), while (7), another (7), than (7), does (7), problem (7), session (7), processing (7), case (7), proposed (7), slow (7), start (7), wait (7), endpoint (7), attacker (7), payload (7), cumulative (7), rto (7), table (6), 2015 (6), kahn (6), transactions (6), zhang (6), bonaventure (6), line (6), blocking (6), round (6), trip (6), karn (6), extensions (6), july (6), bob (6), 2002 (6), june (6), wire (6), cheng (6), rack (6), development (6), 2009 (6), explicit (6), 3168 (6), attacks (6), wireshark (6), later (6), 2012 (6), within (6), 2025 (6), kernel (6), veto (6), recent (6), draft (6), 2008 (6), solutions (6), behavior (6), level (6), real (6), instead (6), offload (6), stack (6), node (6), pointer (6), pseudo (6), contains (6), environments (6), very (6), until (6), thus (6), local (6), acknowledged (6), message (6), endpoints (6), resource (6), published (6), hijacking (6), would (6), acknowledges (6), small (6), established (6), retransmit (6), sends (6), contents (5), privacy (5), you (5), page (5), statements (5), potentially (5), 2023 (5), short (5), org (5), iana (5), stevens (5), further (5), lwn (5), head (5), ludwig (5), 2000 (5), partridge (5), 2004 (5), floyd (5), corbet (5), 1998 (5), their (5), paxson (5), documents (5), mechanisms (5), yuchung (5), 7413 (5), raiciu (5), 6298 (5), tcpct (5), notification (5), 793 (5), vint (5), requests (5), even (5), acceleration (5), simple (5), push (5), persist (5), accurate (5), architecture (5), vinton (5), final (5), same (5), software (5), provide (5), flags (5), below (5), total (5), padding (5), itself (5), throughput (5), large (5), become (5), similar (5), servers (5), without (5), debugging (5), accelerator (5), phase (5), acknowledge (5), once (5), allows (5), need (5), earlier (5), metadata (5), close (5), possible (5), called (5), list (5), running (5), allow (5), malicious (5), normal (5), random (5), article (5), immediately (5), buffer (5), process (5), receivers (5), specified (5), estimate (5), having (5), establish (5), 1978 (5), suite (5), subsection (5), search (4), cookie (4), registered (4), non (4), commons (4), cs1 (4), maint (4), november (4), english (4), media (4), 1996 (4), addison (4), 201 (4), illustrated (4), work (4), fairhurst (4), gorry (4), per (4), hdl (4), paasch (4), robust (4), 1991 (4), gurtov (4), sally (4), bruyeron (4), hemon (4), vern (4), eddy (4), 9002 (4), historic (4), status (4), braden (4), mathis (4), matt (4), proportional (4), handley (4), 1122 (4), postel (4), 675 (4), causes (4), calculated (4), adapter (4), yet (4), those (4), 2007 (4), research (4), current (4), design (4), cryptographic (4), tcpcrypt (4), active (4), cookies (4), tcpm (4), crc (4), problems (4), parallel (4), down (4), format (4), feedback (4), key (4), dod (4), third (4), occur (4), compute (4), reduce (4), associated (4), reserved (4), 160 (4), runs (4), 200 (4), follows (4), ones (4), conditions (4), particularly (4), bandwidth (4), better (4), reliability (4), important (4), historical (4), like (4), normally (4), mechanism (4), delivered (4), ensures (4), result (4), back (4), require (4), algorithms (4), citation (4), hence (4), blocks (4), reordered (4), amount (4), determine (4), required (4), update (4), messages (4), ssl (4), authentication (4), allowing (4), usage (4), assigned (4), allocate (4), identify (4), values (4), followed (4), were (4), indicate (4), direction (4), 999 (4), referred (4), given (4), receives (4), specifies (4), variable (4), steps (4), section (4), urg (4), hide (4), move (4), sidebar (4), view (3), developers (3), text (3), wikimedia (3), categories (3), unsourced (3), containing (3), url (3), location (3), written (3), description (3), parameters (3), history (3), volume (3), reading (3), why (3), proceedings (3), technologies (3), papastergiou (3), survey (3), surveys (3), olivier (3), marx (3), reiner (3), eifel (3), working (3), group (3), analysis (3), jonathan (3), chen (3), secure (3), channel (3), briscoe (3), ethan (3), 1999 (3), 2022 (3), rfc9293 (3), 9170 (3), term (3), 9065 (3), eds (3), 8558 (3), mirja (3), image (3), dukkipati (3), nandita (3), 7323 (3), jacobson (3), reduction (3), ford (3), computing (3), barre (3), 3540 (3), signaling (3), 3522 (3), addition (3), mahdavi (3), 1323 (3), requirements (3), 1981 (3), jon (3), comments (3), bibliography (3), often (3), gets (3), though (3), contain (3), valid (3), memory (3), above (3), validation (3), 2024 (3), deployment (3), thesis (3), university (3), usenix (3), power (3), protection (3), streams (3), how (3), com (3), methods (3), reneging (3), cite (3), www (3), guide (3), closing (3), top (3), bgp (3), sessions (3), via (3), permitted (3), change (3), internetworking (3), turing (3), award (3), 1983 (3), 1980 (3), serve (3), layered (3), standard (3), identified (3), units (3), notes (3), modification (3), prior (3), onto (3), load (3), measured (3), 320 (3), includes (3), method (3), changed (3), say (3), sum (3), complement (3), ensure (3), zeros (3), right (3), part (3), streaming (3), providing (3), delay (3), environment (3), replace (3), especially (3), signal (3), sctp (3), oriented (3), complex (3), widespread (3), generally (3), handle (3), ability (3), situation (3), complexity (3), relatively (3), useful (3), get (3), voice (3), stacks (3), what (3), passing (3), states (3), fact (3), means (3), directly (3), guarantees (3), originally (3), radio (3), effects (3), help (3), factor (3), selectively (3), needless (3), trigger (3), range (3), found (3), delays (3), requires (3), zero (3), still (3), efficient (3), difficult (3), browsers (3), higher (3), repeatedly (3), track (3), independently (3), able (3), take (3), paths (3), across (3), intermediaries (3), mptcp (3), 100 (3), unlike (3), deprecated (3), speed (3), ongoing (3), including (3), years (3), basic (3), among (3), dynamic (3), public (3), private (3), ephemeral (3), telnet (3), four (3), legitimate (3), never (3), arp (3), enough (3), now (3), reset (3), space (3), psh (3), full (3), typical (3), remaining (3), assume (3), reliably (3), band (3), echo (3), clock (3), acknowledgements (3), structure (3), previous (3), correctly (3), lead (3), common (3), willing (3), mtu (3), minimum (3), fragmentation (3), unit (3), create (3), modern (3), expires (3), unacknowledged (3), transmits (3), acks (3), identifies (3), free (3), ordered (3), remains (3), buffers (3), half (3), rst (3), replies (3), therefore (3), passive (3), divided (3), function (3), cwr (3), ece (3), nonce (3), actual (3), pdu (3), 1979 (3), internetwork (3), tools (3), add (2), topic (2), languages (2), mobile (2), statistics (2), code (2), contact (2), policy (2), under (2), terms (2), agree (2), foundation (2), wayback (2), dated (2), miscellaneous (2), missing (2), publisher (2), american (2), wikidata (2), https (2), index (2), machine (2), assignments (2), external (2), nntp (2), unix (2), 1994 (2), 63346 (2), 1986 (2), timers (2), don (2), 271 (2), enhancing (2), rybczyńska (2), ros (2), brunstrom (2), anna (2), welzl (2), ossifying (2), future (2), 2164 (2), comst (2), tutorials (2), christoph (2), making (2), katz (2), 364 (2), improving (2), estimates (2), frequently (2), hesmans (2), duchene (2), middlebox (2), andrei (2), timeouts (2), wired (2), advanced (2), resolving (2), ghedini (2), cloudflare (2), edeline (2), donnet (2), measurement (2), tma (2), matthew (2), journal (2), reducing (2), techniques (2), bhat (2), rizk (2), zink (2), digital (2), estimating (2), martin (2), long (2), considerations (2), operations (2), evolution (2), iyengar (2), trammell (2), brian (2), kuehlewind (2), 8546 (2), 8200 (2), cardwell (2), neal (2), jha (2), priyaranjan (2), 8985 (2), 8095 (2), provided (2), zimmermann (2), alexander (2), 7805 (2), chu (2), jerry (2), 7414 (2), borman (2), scheffenegger (2), van (2), 6937 (2), alan (2), costin (2), 6824 (2), 6182 (2), 6013 (2), 5681 (2), nonces (2), 2001 (2), jamshid (2), 2883 (2), 2581 (2), 1948 (2), 1992 (2), 1989 (2), 791 (2), sunshine (2), carl (2), dalal (2), yogen (2), offloading (2), invalid (2), chunks (2), disable (2), optimization (2), cdma2000 (2), itng (2), fourth (2), technology (2), ranges (2), multi (2), party (2), headers (2), kumar (2), sam (2), berkeley (2), nsdi (2), low (2), 399 (2), hard (2), datacenter (2), isgt (2), 5th (2), flood (2), dos (2), spoofing (2), assessment (2), vol (2), disabled (2), broken (2), routers (2), yokohama (2), overview (2), challenges (2), 535 (2), bibcode (2), increasing (2), tcpipguide (2), prentice (2), hall (2), andrew (2), approach (2), md5 (2), concepts (2), comer (2), amturing (2), laureate (2), smallberg (2), experiment (2), note (2), report (2), project (2), 1977 (2), principle (2), things (2), modular (2), 129 (2), industrial (2), innovation (2), arguments (2), references (2), latest (2), pair (2), made (2), sockets (2), added (2), proxy (2), synchronization (2), feature (2), issue (2), virtual (2), machines (2), device (2), calculating (2), doesn (2), otherwise (2), computed (2), 512 (2), 480 (2), 448 (2), 288 (2), 256 (2), 224 (2), 192 (2), mimics (2), results (2), appropriate (2), complemented (2), alignment (2), achieved (2), patented (2), proprietary (2), achieve (2), transaction (2), wide (2), variety (2), perceived (2), inefficient (2), udt (2), transfers (2), fairness (2), works (2), overhead (2), transparently (2), overcome (2), inefficiencies (2), interference (2), giving (2), suitable (2), forward (2), clients (2), behind (2), nat (2), dns (2), fibre (2), timely (2), alternatives (2), enabled (2), events (2), longer (2), injects (2), prevailing (2), condition (2), loop (2), shorter (2), response (2), faster (2), terminate (2), buffered (2), losses (2), shortened (2), confused (2), engine (2), reduced (2), usually (2), temporary (2), strictly (2), conservative (2), extensive (2), harmful (2), categorized (2), nodes (2), alternative (2), vegas (2), 135 (2), handover (2), limit (2), triggers (2), major (2), experienced (2), flows (2), own (2), begin (2), rtts (2), present (2), 113 (2), exchange (2), 124 (2), 121 (2), abstraction (2), sequentially (2), parts (2), independent (2), attempt (2), opening (2), incurs (2), rather (2), respond (2), observed (2), leads (2), encapsulated (2), led (2), intermediate (2), encounter (2), 112 (2), 103 (2), demonstrated (2), widely (2), toes (2), proposals (2), prr (2), developed (2), improve (2), proposal (2), adopted (2), issues (2), configuration (2), increase (2), redundancy (2), brings (2), reno (2), enhancements (2), rfcs (2), describe (2), facing (2), processes (2), listening (2), commonly (2), smtp (2), ssh (2), ftp (2), authority (2), break (2), who (2), eavesdrop (2), continues (2), accepted (2), evidence (2), occurrence (2), vetoed (2), believe (2), chosen (2), hijack (2), false (2), combined (2), permanent (2), prediction (2), attackers (2), keeping (2), along (2), setting (2), character (2), waits (2), ethernet (2), forcing (2), oob (2), finish (2), specifying (2), marks (2), paws (2), boundary (2), sides (2), sizes (2), represents (2), left (2), shift (2), larger (2), limited (2), beyond (2), mandatory (2), negotiated (2), detects (2), employs (2), contiguous (2), edge (2), resend (2), completely (2), best (2), excessive (2), infer (2), minimize (2), errors (2), standards (2), estimated (2), samples (2), individual (2), smoothed (2), srtt (2), entering (2), collapse (2), max (2), incoming (2), protect (2), attempts (2), much (2), diverse (2), smartphone (2), check (2), frame (2), introduction (2), ppp (2), properly (2), transmissions (2), arrive (2), causing (2), becomes (2), unambiguous (2), resulting (2), receipt (2), tell (2), unpredictable (2), limits (2), corrupted (2), rearranges (2), unread (2), allocated (2), entry (2), exchanged (2), terminated (2), terminating (2), duplex (2), closes (2), responded (2), finally (2), seconds (2), closed (2), diagram (2), listen (2), step (2), previously (2), experimental (2), standardized (2), eeee (2), indicated (2), optional (2), depending (2), 0x05b4 (2), consists (2), meaning (2), dual (2), role (2), unset (2), had (2), meaningful (2), transmit (2), divides (2), handles (2), keeps (2), rtp (2), became (2), origin (2), appearance (2), upload (2), read (2), norsk (2), bahasa (2), log (2), account (2), donate (2), menu (2), statement, conduct, legal, safety, contacts, disclaimers, additional, apply, site, trademark, profit, organization, inc, creative, attribution, sharealike, license, rendered, parsoid, edited, 2026, utc, hidden, webarchive, template, locally, introductions, php, title, transmission_control_protocol, oldid, 1374313347, connection_establishment, oral, interview, wikiversity, learning, 63495, domain, wright, gary, 63354, pub, 405, 1013812, 18216, 397, lixia, erik, mueller, tobias, burkert, christian, federrath, hannes, fischer, mathias, 287, 2478, popets, 0027, 1905, 03518, arxiv, enhanced, marta, look, giorgos, grinnemo, karl, johan, hurtig, khademi, naeem, tüxen, damjanovic, dragana, mangiante, simone, perspectives, 639, 1846371, 8317, 2626780, 619, 17581886, 2078, 141195, 2578901, robin, 505688, 505692, randy, howard, 373, 118544, 118549, craig, phil, asked, questions, benjamin, fabien, detal, gregory, hotmiddlebox, 2535828, 2535830, proof, infocom, twenty, annual, joint, societies, infcom, 1209251, responding, generation, teletraffic, new2an, alessandro, blog, road, korian, benoit, 23919, 8784690, bottom, investigation, solution, offloads, shan, jero, samuel, jagielski, boldyreva, alexandra, nita, rotaru, cristina, 235174220, 1007, s00145, 021, 09389, cryptology, versus, renaud, bruno, lixa, experimentations, 15954837, 279345, 279350, petlund, andreas, hayes, tsang, ing, jyh, gjessing, stein, griwodz, carsten, merits, 2196, 206576469, 8018, 2375213, 2149, 15305731, 510726, 510728, divyashri, amr, study, dash, 32671949, 3083165, 3083175, nossdav, 27th, workshop, audio, video, 274, 2060, 20000004338, 316194, 316230, 263, properties, thomson, pauly, tommy, rfc9170, viability, perkins, colin, rfc9065, around, confidentiality, jana, swett, ian, rfc9002, hardie, ted, rfc8558, signals, rfc8546, hinden, rfc8200, deering, stephen, rfc8985, tlp, rfc8095, eggert, lars, rfc7805, moving, outdated, informational, radhakrishnan, sivasankar, jain, arvind, rfc7413, duke, rfc7414, roadmap, rfc7323, rfc6937, rfc6824, sargent, rfc6298, sebastien, janardhan, rfc6182, architectural, guidelines, simpson, william, allen, rfc6013, rfc5681, spring, neil, weatherall, ely, rfc3540, meyer, rfc3522, ramakrishnan, black, rfc3168, podolsky, rfc2883, rfc2581, romanow, allyn, rfc2018, rfc1948, defending, bellovin, steven, dave, rfc1323, rfc1122, layers, rfc0793, rfc0791, rfc0675, confusion, handed, actually, empty, displays, leave, captures, won, correct, worse, oses, bother, initialize, probably, seeing, little, shouldn, installations, dissectors, hand, yunhong, xinwei, hong, grossman, aimd, decreasing, increases, muhammad, adeel, ahmad, ali, iqbal, 8717768, 7695, 2776, 190, international, rlp, just, bonus, hol, 621, 175, 176, 620, interactions, middleboxes, california, oct, rethinking, expressive, cryptography, andersen, kim, hyung, sin, culler, performant, grigorik, ilya, beijing, reilly, 4493, 4476, browser, kerrisk, expediting, 8548, rfc8548, seo, deployments, honda, 412, designing, implementing, deployable, pluntke, greenhalgh, wischik, 266, 2043164, 2018467, robustness, glossary, john, hagen, barry, mullins, pes, innovative, smart, grid, 25353177, 4673, 4896, 6497785, novel, scada, laurent, joncheray, 1995, symposium, exploiting, infiniteness, insights, jakob, lell, quick, blind, hardening, chapter, peterson, larry, morgan, kaufmann, 55860, 832, 401, gont, fernando, 73rd, meeting, murray, terry, koziniec, sebastian, zander, dixon, polychronis, koutsakis, 23rd, asia, pacific, apcc, changing, enterprise, characteristics, wang, eve, microsoft, technet, essentials, documentation, sysctl, stone, 319, 9547018, 58113, 223, 347059, 347561, 309, architectures, disagree, 268, 370, 372, 365, ietf100, ietf94, johannessen, mads, msc, oslo, investigate, leung, cheong, victor, yang, daiqin, tpds, 1011, 2007itpds, 522l, 522, distributed, mathew, semke, ott, 1997, macroscopic, 1894993, 263932, 264023, monotonically, ionos, explained, github, tcp_minisocks, master, torvalds, 066102, tanenbaum, book, kurose, james, keith, ross, 7th, harlow, england, 286, 936004518, oclc, 359414, heffernan, andy, 2385, rfc2385, signature, kühlewind, accecn, datatracker, selection, 2006, 187671, principles, douglas, westine, summary, editor, cain, edward, 318, 1016, 0376, 5075, 90042, 307, stanford, screwing, our, violating, layering, specifically, trying, packaging, abbate, rfc0760, 760, interconnected, inventing, russell, lawrence, legislatures, consensus, standardization, revolutions, bennett, neutrality, debate, 648, tcom, 1092259, 1974itcom, 637c, 637, intercommunication, labrador, miguel, perez, alfredo, wightman, pedro, press, 55680, developing, tracking, 6th, pearson, equivalently, relative, wtcp, comparison, stealth, pacing, fusion, global, micro, bursting, unaware, uncertain, outbound, reached, intercepted, adaptor, monitoring, driver, omit, calculation, knowing, physical, 141, 140, analyzers, assistance, automatically, upon, reception, cpu, overall, originating, element, 544, 416, 384, 352, shown, upper, modified, 139, let, ihl, 180, bitwise, inserted, arithmetic, needs, summed, odd, form, word, purposes, pad, replaced, mtp, adaptively, multipurpose, offers, advantages, efficiency, 138, product, hoc, advance, predictable, timing, atm, asynchronous, mode, venturi, vtp, unstable, newer, considerably, seen, situations, near, unsuitable, developer, concealment, correction, multiplexing, reasons, sans, fcp, huge, tricks, transmitting, far, simpler, stun, booting, embedded, storage, area, access, coming, copy, multiplayer, games, voip, fashion, showing, engineer, so_debug, setsockopt, dumps, helpful, utility, netstat, taps, sniffer, disadvantages, directed, destroys, property, stored, adaptive, capacity, judged, basis, splits, beneficial, quicker, adaptation, combat, idea, inside, relay, toward, originate, responsible, performing, event, 137, processor, considered, dramatically, precaution, experience, sporadic, shadowing, erroneous, off, decrease, underused, combating, conducted, suggested, modifications, cellular, modifying, veno, santa
Text of the page (random words):
duplicate ack based retransmission 4 4 1 2 timeout based retransmission 4 4 2 error detection 4 4 3 flow control 4 4 4 congestion control 4 5 maximum segment size 4 6 selective acknowledgments 4 7 window scaling 4 8 tcp timestamps 4 9 out of band data 4 10 forcing data delivery 5 vulnerabilities toggle vulnerabilities subsection 5 1 denial of service 5 2 connection hijacking 5 3 tcp veto 6 tcp ports 7 development toggle development subsection 7 1 deprecated proposals 8 hardware implementations 9 wire image and ossification 10 performance 11 acceleration 12 debugging 13 alternatives 14 checksum computation toggle checksum computation subsection 14 1 tcp checksum for ipv4 14 2 tcp checksum for ipv6 14 3 checksum offload 15 see also 16 notes 17 references 18 bibliography toggle bibliography subsection 18 1 requests for comments 18 2 other documents 19 further reading 20 external links toggle the table of contents transmission control protocol 72 languages العربية asturianu azərbaycanca беларуская български বাংলা brezhoneg bosanski català čeština dansk deutsch ελληνικά esperanto español eesti euskara فارسی suomi français galego ગુજરાતી עברית हिन्दी hrvatski magyar հայերեն bahasa indonesia íslenska italiano 日本語 қазақша 한국어 lëtzebuergesch lombard lietuvių latviešu македонски മലയാളം монгол bahasa melayu nederlands norsk nynorsk norsk bokmål ਪੰਜਾਬੀ kapampangan polski piemontèis português română русский srpskohrvatski српскохрватски simple english slovenčina shqip српски srpski svenska kiswahili தமிழ் ไทย tagalog türkçe українська اردو oʻzbekcha ўзбекча tiếng việt 吴语 yorùbá 閩南語 bân lâm gí 粵語 中文 isizulu edit links article talk english read edit view history tools tools move to sidebar hide actions read edit view history general what links here related changes upload file permanent link page information cite this page get shortened url switch to legacy parser print export download as pdf printable version in other projects wikimedia commons wikidata item appearance move to sidebar hide from wikipedia the free encyclopedia redirected from syn ack principal protocol used to stream data across an ip network transmission control protocol protocol stack abbreviation tcp developers vint cerf and robert kahn introduction 1974 52 years ago 1974 based on transmission control program osi layer transport layer 4 ip number 6 rfc 9293 internet protocol suite application layer bgp dhcp v6 dns ftp http http 3 https imap ipp irc ldap mgcp mqtt nntp ntp ospf pop ptp onc rpc rtp rtsp rip sip smtp snmp ssh telnet tls ssl xmpp more transport layer tcp udp dccp sctp rsvp quic more internet layer ip v4 v6 icmp v6 ndp ecn l4s igmp ipsec more link layer arp tunnels ppp mac more v t e the transmission control protocol tcp is one of the main protocols of the internet protocol suite providing reliable ordered and error checked delivery of a stream of octets bytes between applications running on hosts communicating via an ip network it originated in the initial network implementation in which it complemented the internet protocol ip therefore the entire suite is commonly referred to as tcp ip major internet applications such as the world wide web email remote administration file transfer and streaming media rely on tcp which is part of the transport layer of the tcp ip suite ssl tls often runs on top of tcp today tcp remains a core protocol for most internet communication ensuring reliable data transfer across diverse networks 1 tcp is connection oriented meaning that sender and receiver first need to establish a connection based on agreed parameters they do this through a three way handshake procedure 2 the server must be listening passive open for connection requests from clients before a connection is established the three way handshake active open retransmission and error detection add to reliability but lengthen latency applications that do not require reliable data stream service may use the user datagram protocol udp instead which provides a connectionless datagram service that prioritizes time over reliability tcp employs network congestion avoidance however there are vulnerabilities in tcp including denial of service connection hijacking tcp veto and reset attack historical origin edit in may 1974 vint cerf and bob kahn described an internetworking protocol for sharing resources using packet switching among network nodes 3 the authors had been working with gérard le lann to incorporate concepts from the french cyclades project into the new network 4 the specification of the resulting protocol rfc 675 specification of internet transmission control program was written by vint cerf yogen dalal and carl sunshine and published in december 1974 5 it contains the first attested use of the term internet as a shorthand for internetwork citation needed the transmission control program incorporated both connection oriented links and datagram services between hosts in version 4 the monolithic transmission control program was divided into a modular architecture consisting of the transmission control protocol and the internet protocol 6 7 this resulted in a networking model that became known informally as tcp ip although formally it was variously referred to as the dod internet architecture model dod model for short or darpa model 8 9 10 later it became part of and synonymous with the internet protocol suite tcp continues to evolve with incremental updates and best practices formalized in rfcs such as rfc 9293 2022 11 the following internet experiment note ien documents describe the evolution of tcp into the modern version 12 ien 5 specification of internet transmission control program tcp version 2 march 1977 ien 21 specification of internetwork transmission control program tcp version 3 january 1978 ien 27 a proposal for tcp version 3 1 header format february 1978 ien 40 transmission control protocol draft version 4 june 1978 ien 44 latest header formats june 1978 ien 55 specification of internetwork transmission control protocol version 4 september 1978 ien 81 transmission control protocol version 4 february 1979 ien 112 transmission control protocol august 1979 ien 124 dod standard transmission control protocol december 1979 tcp was standardized in january 1980 as rfc 761 about 315 internet hosts advertised tcp support by 1983 with only a portion accepting connections at any given time 13 in 2004 vint cerf and bob kahn received the turing award for their foundational work on tcp ip 14 15 network function edit the transmission control protocol provides a communication service at an intermediate level between an application program and the internet protocol it provides host to host connectivity at the transport layer of the internet model an application does not need to know the particular mechanisms for sending data via a link to another host such as the required ip fragmentation to accommodate the maximum transmission unit of the transmission medium at the transport layer tcp handles all handshaking and transmission details and presents an abstraction of the network connection to the application typically through a network socket interface at the lower levels of the protocol stack due to network congestion traffic load balancing or unpredictable network behavior ip packets may be lost duplicated or delivered out of order tcp detects these problems requests re transmission of lost data rearranges out of order data and even helps minimize network congestion to reduce the occurrence of the other problems if the data still remains undelivered the source is notified of this failure once the tcp receiver has reassembled the sequence of octets originally transmitted it passes them to the receiving application thus tcp abstracts the application s communication from the underlying networking details tcp is optimized for accurate delivery rather than timely delivery and can incur relatively long delays on the order of seconds while waiting for out of order messages or re transmissions of lost messages therefore it is not particularly suitable for real time applications such as voice over ip for such applications protocols like the real time transport protocol rtp operating over the user datagram protocol udp are usually recommended instead 16 tcp is a reliable byte stream delivery service that guarantees that all bytes received will be identical and in the same order as those sent since packet transfer by many networks is not reliable tcp achieves this using a technique known as positive acknowledgment with re transmission this requires the receiver to respond with an acknowledgment message as it receives the data the sender keeps a record of each packet it sends and maintains a timer from when the packet was sent the sender re transmits a packet if the timer expires before receiving the acknowledgment the timer is needed in case a packet gets lost or corrupted 16 while ip handles actual delivery of the data tcp keeps track of segments the individual units of data transmission that a message is divided into for efficient routing through the network for example when an html file is sent from a web server the tcp software layer of that server divides the file into segments and forwards them individually to the internet layer in the network stack the internet layer software encapsulates each tcp segment into an ip packet by adding a header that includes among other data the destination ip address when the client program on the destination computer receives them the tcp software in the transport layer re assembles the segments and ensures they are correctly ordered and error free as it streams the file contents to the receiving application tcp segment structure edit transmission control protocol accepts data from a data stream divides it into chunks and adds a tcp header creating a tcp segment the tcp segment is then encapsulated into an internet protocol ip datagram and exchanged with peers 17 the term tcp packet appears in both informal and formal usage whereas in more precise terminology segment refers to the tcp protocol data unit pdu datagram 18 to the ip pdu and frame to the data link layer pdu processes transmit data by calling on the tcp and passing buffers of data as arguments the tcp packages the data from these buffers into segments and calls on the internet module to transmit each segment to the destination tcp 19 a tcp segment consists of a segment header and a data section the segment header contains 10 mandatory fields and an optional extension field options octets 20 through 56 in table the data section follows the header and is the payload data carried for the application 20 the length of the data section is not specified in the segment header it can be calculated by subtracting the combined length of the segment header and ip header from the total ip datagram length specified in the ip header citation needed tcp header format 20 offset octet 0 1 2 3 octet bit 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 source port destination port 4 32 sequence number 8 64 acknowledgement number meaningful when ack bit set 12 96 data offset reserved cwr ece urg ack psh rst syn fin window 16 128 checksum urgent pointer meaningful when urg bit set 21 20 160 options if present data offset will be greater than 5 padded with zeroes to a multiple of 32 bits since data offset counts words of 4 octets 56 448 60 480 data 64 512 source port 16 bits identifies the sending port destination port 16 bits identifies the receiving port sequence number 32 bits has a dual role if the syn flag is set 1 then this is the initial sequence number the sequence number of the actual first data byte and the acknowledged number in the corresponding ack are then this sequence number plus 1 if the syn flag is unset 0 then this is the accumulated sequence number of the first data byte of this segment for the current session acknowledgment number 32 bits if the ack flag is set then the value of this field is the next sequence number that the sender of the ack is expecting this acknowledges receipt of all prior bytes if any 22 the first ack sent by each end acknowledges the other end s initial sequence number itself but no data 23 data offset doffset 4 bits specifies the size of the tcp header in 32 bit words the minimum size header is 5 words and the maximum is 15 words thus giving the minimum size of 20 bytes and maximum of 60 bytes allowing for up to 40 bytes of options in the header this field gets its name from the fact that it is also the offset from the start of the tcp segment to the actual data citation needed reserved rsrvd 4 bits for future use and should be set to zero senders should not set these and receivers should ignore them if set in the absence of further specification and implementation from 2003 to 2017 the last bit bit 103 of the header was defined as the ns nonce sum flag by the experimental rfc 3540 ecn nonce ecn nonce never gained widespread use and the rfc was moved to historic status 24 a rfc draft 25 proposes a new use for this bit the bit is now used for negotiating the use of accurate ecn flags 8 bits contains 8 1 bit flags control bits as follows when using tcpdump a set flag is indicated with the character in parentheses cwr w 1 bit congestion window reduced cwr flag is set by the sending host to indicate that it received a tcp segment with the ece flag set and had responded in congestion control mechanism 26 a ece e 1 bit ecn echo has a dual role depending on the value of the syn flag it indicates if the syn flag is set 1 the tcp peer is ecn capable 27 if the syn flag is unset 0 a packet with the congestion experienced flag set ecn 11 in its ip header was received during normal transmission a this serves as an indication of network congestion or impending congestion to the tcp sender 28 urg u 1 bit indicates that the urgent pointer field is significant ack 1 bit indicates that the acknowledgment field is significant all packets after the initial syn packet sent by the client should have this flag set 29 psh p 1 bit push function asks to push the buffered data onto the wire i e send on the sender end and to the receiving application at the receiver end 20 rst r 1 bit reset the connection syn s 1 bit synchronize sequence numbers only the first packet sent from each end should have this flag set some other flags and fields change meaning based on this flag and some are only valid when it is set and others when it is clear fin f 1 bit last packet from sender window 16 bits the size of the receive window which specifies the number of window size units b that the sender of this segment is currently willing to receive c see flow control and window scaling checksum 16 bits the 16 bit checksum field is used for error checking of the tcp header the payload and an ip pseudo header the pseudo header consists of the source ip address the destination ip address the protocol number for the tcp protocol 6 and the length of the tcp he...
|