17. TCP - Pārraides vadības protokols

Pēdējais mainījis Administrator 2011-06-06 17:16

17. TCP - Pārraides vadības protokols

17.01 Ievads

Šajā nodaļā dots TCP servisu pārskats, ko var izmantot aplikāciju slānis. Aplūkojam arī laukus TCP sākumposmā. Turpmākajās nodaļās sīkāk aplūkosim visus šos sākumposmu laukus, pamazām iepazīstoties ar to, kā TCP strādā.

Mūsu apraksts protokolam TCP sākas šajā nodaļā un turpinās septiņu nodaļu garumā. 18.nodaļa apraksta kā #term("izveido", "establish") un #term("pabeidz", "terminate") TCP savienojumu, un 19.nodaļa un 20.nodaļa aplūko parastu datu #term("pārsūtīšanu", "transfer"), gan interaktīvai lietošanai (piemēram, #term("attālināts logins", "remote_login")), gan #term("masveida datiem", "bulk_data") (piemēram #term("failu pārsūtīšana", "file_transfer")). 21.nodaļa apraksta TCP noildzes un #term("atkalsūtīšanas", "retransmission") mehānismu, kam seko vēl divi citi TCP taimeri 22.nodaļā un 23.nodaļā. Visbeidzot, 24.nodaļa apskata jaunākas TCP funkcijas un TCP veiktspēju.

Sākotnējā TCP specifikācija ir RFC 793 [Postel 1981c], lai gan dažas kļūdas šajā RFC ir izlabotas vēlākos RFC saistībā ar hostu prasībām (Host Requirements).

Vingrinājumi

17.1
Esam aplūkojuši sekojošus pakešu formātus, katram no kuriem atbilstošajā hederī ir kontrolsumma: IP, ICMP, IGMP, UDP un TCP. Katram no minētajiem protokoliem, aprakstīt, kuru IP datagrammas daļu kontrolsumma pārklāj un vai kontrolsumma ir obligāta vai nē.
17.2
Kādēļ visi Interneta protokoli, ko esam apsprieduši (IP, ICMP, IGMP, UDP, TCP) #term("klusi izmet", "quietly discard") ienākošu paketi, kurā ir kontrosummas kļūda?
17.3
TCP nodrošina baitu plūsmas servisu, kur starp sūtītāju un saņēmēju nepastāv #term("ierakstu", "record") robežas. Kā lietotnes var nodrošināt pašas savus ierakstu #term("iezīmes", "marker")?
17.4
Kādēļ #term("avota", "source") un #term("galapunkta", "destination") portu numuri ir TCP sākumposma pašā sākumā?
17.5
Kādēļ TCP galvenei ir #term("galvenes garuma lauks", "header_length_field"), bet UDP galvenē (#picref("f_11_2.gif", "11.2.attēlā")) tāda lauka nav?

Tagi:
Izveidojis Kalvis Apsītis 2008-03-21 17:28
    
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.4 - Documentation