狗一样的学习,绅士一样的生活。。
分类: LINUX
2013-11-10 07:03:15
Transmission Control Protocol (TCP)TCP/IP套件的传输层有各种协议在传输级别操作。这一层负责从主机到主机的连接。传输层管理定向流连接、流量控制、可靠传输和多个传输(复用)。
传输层有五种基本的协议:
1.Transmission Control Protocol (TCP)
2.User Datagram Protocol (UDP)
3.Datagram Congestion Control Protocol (DCCP)
4.Stream Control Transmission Protocol (SCTP)
5.Resource Reservation Protocol (RSVP)
Transmission Control Protocol (TCP)
TCP从应用程序层处理传输的数据。当从一个系统接收一个大文件,TCP从它的下层管理IP数据报,IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序。如果必须,TCP将对收到的数据重新排序,以正确的顺序交给应用层。TCP也需要较小的IP packets,并将其按序合并到原来的文件发送到应用层。如果一个包没有被收到,TCP可以发送ICMP消息报文有指定的数据包重传。
注意: When packets are delivered out of order(次序颠倒),由于通过不同的路由器,这就是所谓的分割。
IP提供不可靠、无连接的数据报传送服务,TCP提供可靠的字节流服务。
当TCP在两主机之间建立一个连接,称为三次握手。第一,一个SYN(synchronize)包被发送到主机。第二,其他主机发送一个SYN-ACK,或acknowledgement到发送端主机。最后,发送端主机发送ACK (acknowledgement)完成握手。现在,两主机之间建立了一个连接。
当一个主机断开/终止连接,它发送一个FIN (finished) packet. 一旦收到,其他主机响应一个 FIN-ACK(finished acknowledgment). 终止的主机发送一个 ACK packet完成终止连接。
TCP通过建立一个窗口大小管理流量控制。窗口大小是被传输的数据量。如果堵塞或报源抑制发生,窗口大小可以减少。If the other host sends a message to send more,可以增加窗口大小。
User Datagram Protocol (UDP)
UDP类似于TCP,但没有可靠地传输。UDP是低开销的因为不需要收到应答数据包、重传数据和分组排序。UDP可以更快,但数据很可能会丢失。UDP是更多的for multicasting data如视频流。如果数据包的顺序颠倒或丢失,那么跳过这些数据包。因为丢失的数据包流媒体似乎跳动。
UDP可以用于简单的查询如DNS查询,因为它比TCP更快一些。对于这些类型的使用,其他协议管理检索的保证。如果一个DNS查询发出但没有收到响应,那么查询会再次发出。
UDP广泛用于流媒体或任何类型的多播操作。
详见