TCP/IP与Http与socket的关系

1 理清概念:

TCP/IP是一个大的协议族(只不过TCP和IP是super star所以就这么命名了),它包括了:

应用层协议:FTP、HTTP、TELNET、SMTP、DNS(协议);

传输层协议:TCP、UDP(协议)

网络层协议:IP、ICMP、ARP、RARP、BOOTP(协议)

其中:

HTTP(超文本传输协议)是基于TCP在两台主机间传递信息的协议。也就是决定了如何使用与解析TCP/IP传输过来的数据包。

Sockct:是实用了TCP or UDP 协议的一种实现,用以开发TCP/IP网络上的应用。

  • 1) SOCK_STREAM 表示面向连接的数据传输方式。数据可以准确无误地到达另一台计算机,如果损坏或丢失,可以重新发送,但效率相对较慢。常见的 http 协议就使用 SOCK_STREAM 传输数据,因为要确保数据的正确性,否则网页不能正常解析。
  • 2) SOCK_DGRAM 表示无连接的数据传输方式。计算机只管传输数据,不作数据校验,如果数据在传输中损坏,或者没有到达另一台计算机,是没有办法补救的。也就是说,数据错了就错了,无法重传。因为 SOCK_DGRAM 所做的校验工作少,所以效率比 SOCK_STREAM 高。

UDP:无链接的不安全的网络协议。ping就是基于UDP的。QQ也是;

原文地址:https://www.cnblogs.com/luntai/p/6502737.html