浏览器和服务器都通过TCP/IP连接互联网。浏览器通过TCP/IP进入服务器服务器通过TCP/IP传送数据。什么是TCP/IP协议TCP/IP 是用于因特网 (Internet) 的通信协议。TCP/IP 是供已连接因特网的计算机进行通信的协议它定义了电子设备如何连接因特网以及如何进行数据传输。在 TCP/IP 中包含一系列用于处理数据通信的协议TCP (传输控制协议) - 应用程序之间通信UDP (用户数据包协议) - 应用程序之间的简单通信IP (网际协议) - 计算机之间的通信ICMP (因特网消息控制协议) - 针对错误和状态DHCP (动态主机配置协议) - 针对动态寻址TCPTCP是面向连接的通信协议通过三次握手建立连接通讯完成时要拆除连接由于TCP是面向连接的所以只能用于端到端的通讯。TCP提供的是一种可靠的数据流服务采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制所谓窗口实际表示接收能力用以限制发送方的发送速度。如果IP数据包中有已经封好的TCP数据包那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查同时实现虚电路间的连接。TCP数据包中包括序号和确认所以未按照顺序收到的包可以被排序而损坏的包可以被重传。TCP将它的信息送到更高层的应用程序例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层TCP层便将它们向下传送到IP层设备驱动程序和物理介质最后到接收方。面向连接的服务例如Telnet、FTP、rlogin、X Windows和SMTP需要高度的可靠性所以它们使用了TCP。DNS在某些情况下使用TCP发送和接收域名数据库但使用UDP传送有关单个主机的信息。UDPUDP是面向无连接的通讯协议UDP数据包括目的端口号和源端口号信息由于通讯不需要连接所以可以实现广播发送。UDP通讯时不需要接收方确认属于不可靠的传输可能会出现丢包现象实际应用中要求程序员编程验证。UDP与TCP位于同一层但它不管数据包的顺序、错误或重发。因此UDP不被应用于那些使用虚电路的面向连接的服务UDP主要用于那些面向查询—应答的服务例如NFS。相对于FTP或Telnet这些服务需要交换的信息量较小。使用UDP的服务包括NTP网络时间协议和DNSDNS也使用TCP。欺骗UDP包比欺骗TCP包更容易因为UDP没有建立初始化连接也可以称为握手因为在两个系统间没有虚电路也就是说与UDP相关的服务面临着更大的危险。ICMPICMP与IP位于同一层它被用来传送IP的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP的‘Redirect’信息通知主机通向其他系统的更准确的路径而‘Unreachable’信息则指出路径有问题。另外如果路径不可用了ICMP可以使TCP连接‘体面地’终止。PING是最常用的基于ICMP的服务。TCP使用固定连接TCP用于固定程序通信当一个程序希望通过TCP与另外一个程序通信它会发送一个通信请求。这个请求必须发送到一个具体的地址在双方握手之后TCP将在两个程序之间建立一个全双工的通信。这个全双工将占用两个计算机之间通信线路直到一方断开连接为止。IP是用于计算机之间通信。IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样IP 就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要。通过 IP消息或者其他数据被分割为小的独立的包并通过因特网在计算机之间传送。IP 负责将每个包路由至它的目的地。IP路由器当一个IP包从一台计算机被发送到一个IP路由器。IP路由器将ip包发送到目的地或者目的地相关的路由器。TCP/IP 意味着 TCP 和 IP 在一起协同工作。TCP 负责应用软件比如您的浏览器和网络软件之间的通信。IP 负责计算机之间的通信。TCP 负责将数据分割并装入 IP 包然后在它们到达的时候重新组合它们。IP 负责将包发送至接受者。