References (Rifer
imenti)
Questa sezione elenca i riferimenti e le risorse correlate citate nella RFC 793.
Riferimenti normativi (Normative References)
[1] A Protocol for Packet Network Intercommunication
Autori: V. Cerf and R. Kahn
Titolo: "A Protocol for Packet Network Intercommunication"
Pubblicazione: IEEE Transactions on Communications
Volume: Vol. COM-22, No. 5
Pagine: pp 637-648
Data: May 1974
Importanza: Questo è il documento fondamentale per i protocolli TCP/IP, che ha proposto per la prima volta i concetti fondamentali dei protocolli Internet.
[2] Internet Protocol - DARPA Internet Program Protocol Specification
Editore: J. Postel
Titolo: "Internet Protocol - DARPA Internet Program Protocol Specification"
RFC: RFC 791
Istituzione: USC/Information Sciences Institute
Data: September 1981
Importanza: Definisce il protocollo Internet (IP), il protocollo di livello rete da cui dipende TCP.
Accesso online:
[3] Connection Management in Transport Protocols
Autori: Y. Dalal and C. Sunshine
Titolo: "Connection Management in Transport Protocols"
Pubblicazione: Computer Networks
Volume: Vol. 2, No. 6
Pagine: pp. 454-473
Data: December 1978
Importanza: Descrive i meccanismi di gestione della connessione nei protocolli di trasporto, inclusa la base teorica per l'handshake a tre vie.
[4] Assigned Numbers
Autore: J. Postel
Titolo: "Assigned Numbers"
RFC: RFC 790
Istituzione: USC/Information Sciences Institute
Data: September 1981
Importanza: Definisce i numeri di protocollo, i numeri di porta e altri numeri assegnati.
Nota: RFC 790 è stato aggiornato da RFC successivi, la versione attuale è RFC 9293.
Aggiornamenti e integrazioni (Updates and Supplements)
RFC 793, come specifica TCP originale, è stata aggiornata e integrata da numerose RFC nel corso degli anni:
Aggiornamenti principali
| RFC | Titolo | Data | Descrizione |
|---|---|---|---|
| RFC 1122 | Requirements for Internet Hosts | 1989 | Specifica dei requisiti host |
| RFC 2581 | TCP Congestion Control | 1999 | Algoritmi di controllo della congestione |
| RFC 5681 | TCP Congestion Control | 2009 | Aggiornamento del controllo della congestione |
| RFC 6093 | On the Implementation of TCP URG | 2011 | Implementazione del flag URG |
| RFC 6528 | Defending Against Sequence Number Attacks | 2012 | Difesa contro attacchi ai numeri di sequenza |
| RFC 7323 | TCP Extensions for High Performance | 2014 | Estensioni TCP ad alte prestazioni |
| RFC 9293 | TCP Specification | 2022 | Specifica TCP più recente |
Estensioni correlate
| RFC | Titolo | Descrizione |
|---|---|---|
| RFC 1323 | TCP Extensions | Scalatura della finestra, timestamp |
| RFC 2018 | TCP Selective Acknowledgment | Opzione SACK |
| RFC 2873 | TCP Processing of ICMP | Elaborazione ICMP |
| RFC 3168 | ECN in IP | Notifica esplicita di congestione |
| RFC 3390 | Increasing TCP Initial Window | Aumento della finestra iniziale |
| RFC 5482 | TCP User Timeout | Opzione timeout utente |
| RFC 6824 | TCP Extensions for Multipath | TCP multipath |
| RFC 7413 | TCP Fast Open | Apertura veloce |
| RFC 8312 | CUBIC Congestion Control | Controllo della congestione CUBIC |
Contesto storico (Historical Context)
Cronologia dello sviluppo TCP/IP
1974 - Articolo Cerf & Kahn: Concetto TCP/IP proposto
1981 - RFC 791 & 793: Specifiche formali IP e TCP
1983 - Passaggio ARPANET: Transizione da NCP a TCP/IP
1989 - RFC 1122: Specifica dei requisiti host
1999 - RFC 2581: Controllo della congestione standardizzato
2014 - RFC 7323: Estensioni ad alte prestazioni
2022 - RFC 9293: Modernizzazione della specifica TCP
Influenze sul design
Il design di RFC 793 è stato influenzato dalle seguenti ricerche:
- Protocollo ARPANET NCP: Protocollo di controllo di rete iniziale
- Teoria della commutazione di pacchetto: Lavoro di Paul Baran e Donald Davies
- Principio end-to-end: Articolo di Saltzer, Reed e Clark
- Ricerca sul controllo di flusso: Teoria del protocollo a finestra scorrevole
Specifiche di protocolli correlati (Related Protocol Specifications)
Livello trasporto
- RFC 768: User Datagram Protocol (UDP) - Alternativa senza connessione a TCP
- RFC 4960: Stream Control Transmission Protocol (SCTP) - Protocollo di trasporto moderno
- RFC 9000: QUIC - Protocollo di trasporto moderno basato su UDP
Livello rete
- RFC 791: Internet Protocol (IP) - Livello rete da cui dipende TCP
- RFC 792: Internet Control Message Protocol (ICMP) - Segnalazione errori
- RFC 2460: IPv6 Specification - IP di nuova generazione
Livello applicazione
Principali protocolli applicativi che utilizzano TCP:
- RFC 854: Telnet Protocol
- RFC 959: File Transfer Protocol (FTP)
- RFC 2616/9110: HTTP - Protocollo Web
- RFC 5321: SMTP - Trasferimento posta
- RFC 9293: Specifica TCP moderna
Risorse accademiche (Academic Resources)
Libri di testo classici
-
"Computer Networks" - Andrew S. Tanenbaum
- Capitolo 5: Livello trasporto, copertura dettagliata di TCP
-
"TCP/IP Illustrated, Volume 1" - W. Richard Stevens
- Riferimento classico dello stack di protocolli TCP/IP
-
"Unix Network Programming" - W. Richard Stevens
- Guida pratica alla programmazione TCP
Articoli di ricerca
-
"Congestion Avoidance and Control" - Jacobson & Karels (1988)
- Ha gettato le basi per il controllo della congestione TCP
-
"The Synchronization of Periodic Routing Messages" - Floyd & Jacobson (1993)
- Sincronizzazione nei protocolli di routing e trasporto
-
"Improving the Start-up Behavior of a Congestion Control Scheme for TCP" - Allman, et al. (1997)
- Miglioramento del comportamento di avvio TCP
Risorse online (Online Resources)
Risorse ufficiali
- IETF RFC Editor: https://www.rfc-editor.org/
- IETF DataTracker: https://datatracker.ietf.org/
- IANA Port Numbers: https://www.iana.org/assignments/service-names-port-numbers/
Implementazioni e strumenti
- Codice sorgente Linux TCP: https://github.com/torvalds/linux/tree/master/net/ipv4
- Codice sorgente FreeBSD TCP: https://github.com/freebsd/freebsd-src/tree/main/sys/netinet
- tcpdump: https://www.tcpdump.org/ - Strumento di analisi di rete
- Wireshark: https://www.wireshark.org/ - Analisi di rete grafica
Risorse educative
- TCP/IP Guide: http://www.tcpipguide.com/
- Computer Networking: A Top-Down Approach: Kurose & Ross
Processo di standardizzazione (Standardization Process)
Evoluzione dello standard TCP
RFC 793 (1981)
↓
STD 7 (Standard Internet)
↓
Molteplici aggiornamenti (RFC 1122, 2581, 5681, ecc.)
↓
RFC 9293 (2022) - Ultima versione consolidata
Gruppi di lavoro
-
IETF TCP Maintenance and Minor Extensions (tcpm) WG
- Responsabile della manutenzione della specifica TCP e delle estensioni minori
- https://datatracker.ietf.org/wg/tcpm/
-
IETF Internet Congestion Control Research Group (iccrg)
- Ricerca sugli algoritmi di controllo della congestione
- https://irtf.org/iccrg
Riferimenti di implementazione (Implementation References)
Principali implementazioni TCP
-
Linux TCP
- Sorgente:
net/ipv4/tcp*.c - Implementazione: Controllo della congestione Cubic, BBR e altri algoritmi moderni
- Sorgente:
-
BSD TCP
- FreeBSD, OpenBSD, NetBSD
- Implementazione classica affidabile
-
Windows TCP
- Stack TCP/IP del kernel Windows NT
- Controllo della congestione Compound TCP
-
lwIP (Lightweight IP)
- Implementazione TCP/IP per sistemi embedded
- https://savannah.nongnu.org/projects/lwip/
Test e verifica (Testing and Verification)
Test di conformità
- TCP Test Suite: Suite di test TCP/IP NIST
- Packetdrill: Strumento di test TCP di Google
- TAHI Project: Test di conformità IPv6
Benchmark delle prestazioni
- iperf3: Strumento di test delle prestazioni di rete
- netperf: Benchmarking di rete
- nuttcp: Misurazione delle prestazioni di rete
Considerazioni sulla sicurezza (Security Considerations)
RFC di sicurezza correlate:
| RFC | Titolo | Descrizione |
|---|---|---|
| RFC 4953 | TCP Security Review | Revisione della sicurezza TCP |
| RFC 5925 | TCP-AO | Opzione di autenticazione TCP |
| RFC 6528 | Sequence Number Attacks | Difesa contro attacchi ai numeri di sequenza |
| RFC 7323 | TCP Timestamps | Sicurezza dei timestamp |
| RFC 8446 | TLS 1.3 | Livello di crittografia su TCP |
Citazione
Formato di citazione standard
Formato APA:
Postel, J. (Ed.). (1981). Transmission Control Protocol (RFC 793).
USC/Information Sciences Institute.
Formato BibTeX:
@techreport{rfc793,
author = {J. Postel},
title = {Transmission Control Protocol},
howpublished = {Internet Requests for Comments},
type = {STD},
number = {7},
year = {1981},
month = {September},
issn = {2070-1721},
publisher = {RFC Editor},
institution = {RFC Editor},
url = {https://www.rfc-editor.org/rfc/rfc793.txt}
}
Copyright e licenza (Copyright and License)
Avviso di copyright dei documenti RFC:
- I documenti RFC hanno tipicamente il copyright dell'IETF Trust al momento della pubblicazione
- Liberi di copiare, citare e implementare le specifiche
- Devono mantenere l'avviso di copyright e le informazioni di citazione
Ritorna: Home RFC 793
Correlato: