system
Răspunde în limba română, în stilul Wikipedia, cat mai corect gramatical.
user
Ce poți relata despre TCP/IP?
assistant
Modelul TCP/IP (Protocol de control al transmisiei/Protocol Internet, în engleză Transmission Control Protocol/Internet Protocol) a fost creat de US DoD (US Department of Defence - Ministerul Apărării Naționale al Statelor Unite) din necesitatea unei rețele care ar putea supraviețui în orice condiții. DoD dorea ca, atâta timp cât funcționau mașina sursă și mașina destinație, conexiunile să rămână intacte, chiar dacă o parte din mașini sau din liniile de transmisie erau brusc scoase din funcțiune. Era nevoie de o arhitectură flexibilă, deoarece se aveau în vedere aplicații cu cerințe divergente, mergând de la transferul de fișiere până la transmiterea vorbirii în timp real.

Aceste cerințe au condus la alegerea a patru niveluri pentru modelul TCP/IP: Aplicație, Transport, Rețea (sau Internet) și Acces la Rețea.

Nivelul Aplicație 
Nivelul aplicație se referă la protocoalele de nivel înalt folosite de majoritatea aplicațiilor, precum terminalul virtual (TELNET), transfer de fișiere (FTP) și poștă electronică (SMTP). Alte protocoale de nivel aplicație sunt DNS (sistem de nume de domeniu), NNTP sau HTTP.

În majoritatea implementărilor, nivelul aplicație tratează nivelurile inferioare ca o "cutie neagră" care oferă o infrastructură sigură de comunicații, deși majoritatea aplicațiilor cunosc adresa IP sau portul folosit. Majoritatea protocoalelor de la nivelul aplicație sunt asociate cu modelul client-server. Serverele au de obicei asociate porturi fixe, atribuite de IANA: HTTP are portul 80, FTP portul 21, etc. În schimb, clienții folosesc porturi temporare.

Nivelul Transport 
Este identic cu cel din modelul OSI, ocupându-se cu probleme legate de siguranță, control al fluxului și corecție de erori. El este proiectat astfel încât să permită comunicarea între entitățile pereche: sursă, respectiv, destinație. În acest sens au fost definite două protocoale capăt-la-capăt. 

Primul din ele, TCP (Transmission Control Protocol). El este un protocol sigur orientat pe conexiune care permite ca un flux de octeți trimiși de pe o mașină să ajungă fără erori pe orice altă mașină din inter-rețea. Acest protocol fragmentează fluxul de octeți în mesaje discrete și pasează fiecare mesaj nivelului internet. TCP tratează totodată controlul fluxului pentru a se asigura că un emițător rapid nu inundă un receptor lent cu mai multe mesaje decât poate acesta să prelucreze.

Al doilea protocol din acest nivel, UDP (User Datagram Protocol), este un protocol nesigur, fără conexiuni, destinat aplicațiilor care doresc să utilizeze propria lor secvențiere și control al fluxului. Protocolul UDP este de asemenea mult folosit pentru interogări rapide întrebare-răspuns, client-server și pentru aplicații în care comunicarea promptă este mai importantă decât comunicarea cu acuratețe, așa cum sunt aplicațiile de transmisie a vorbirii și a imaginilor video.

Nivelul Rețea (Internet) 
Scopul inițial al nivelului rețea ("Internet Protocol") era să asigure rutarea pachetelor în interiorul unei singure rețele. Odată cu apariția interconexiunii între rețele, acestui nivel i-au fost adăugate funcționalități de comunicare între o rețea sursă și o rețea destinație. 

În stiva TCP/IP, protocolul IP asigură rutarea pachetelor de la o adresă sursă la o adresă destinație, folosind și unele protocoale adiționale, precum ICMP sau IGMP. Determinarea drumului optim între cele două rețele se face la acest nivel. 

Comunicarea la nivelul IP este nesigură, sarcina de corecție a erorilor fiind plasată la nivelurile superioare (de exemplu prin protocolul TCP). În IPv4 (nu și IPv6), integritatea pachetelor este asigurată de sume de control.

Nivelul Acces la rețea 
Se ocupă cu toate problemele legate de transmiterea efectivă a unui pachet IP pe o legătură fizică, incluzând și aspectele legate de tehnologii și de medii de transmisie, adică nivelurile OSI Legătură de date și Fizic.

Bibliografie
 Douglas E. Comer. Internetworking with TCP/IP - Principles, Protocols and Architecture. ISBN 86-7991-142-9
 Joseph G. Davies and Thomas F. Lee. Microsoft Windows Server 2003 TCP/IP Protocols and Services. ISBN 0-7356-1291-9
 
 Craig Hunt TCP/IP Network Administration. O'Reilly (1998) ISBN 1-56592-322-7
 
 Ian McLean. Windows(R) 2000 TCP/IP Black Book. ISBN 1-57610-687-X
 Ajit Mungale Pro .NET 1.1 Network Programming. ISBN 1-59059-345-6
 W. Richard Stevens. TCP/IP Illustrated, Volume 1: The Protocols. ISBN 0-201-63346-9
 W. Richard Stevens and Gary R. Wright. TCP/IP Illustrated, Volume 2: The Implementation. ISBN 0-201-63354-X
 W. Richard Stevens. TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols. ISBN 0-201-63495-3
 Andrew S. Tanenbaum. Computer Networks. ISBN 0-13-066102-3

Legături externe

Internet History—Pages on Robert Kahn, Vinton Cerf, and TCP/IP (reviewed by Cerf and Kahn).
 RFC 675 - Specification of Internet Transmission Control Program, December 1974 Version
 TCP/IP State Transition Diagram  (PDF)
 RFC 1180 A TCP/IP Tutorial - from the Internet Engineering Task Force (January 1991)
 TCP/IP FAQ
 The TCP/IP Guide - A comprehensive look at the protocols and the procedures/processes involved
 A Study of the ARPANET TCP/IP Digest
 TCP/IP Sequence Diagrams
 Daryl's TCP/IP Primer - Intro to TCP/IP LAN administration, conversational style
 Introduction to TCP/IP
 Creating Simple TCP/IP Server And Client to Transfer Data Using C# / VB.net 

Arhitectura rețelei
Istoria internetului
Protocoale Internet
Acronime de cinci litere