通信协议 —— TCP UDP HTTP

什么是Http、Socket、TCP/IP?

HTTP ( HyperText Transfer Protocal ) ,即:超文本传输协议,从1990年开始就在WWW上广泛应用,是当今在WWW上应用最多的协议,Http是应用层协议,当浏览网页的时候,浏览爱和Web服务器之间就会通过HTTP在Internet上进行数据的发送和接收,Http是一个基于请求/响应模式的、无状态的协议。即我们通常所说的Request/Response。
HTTP是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。

Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。Socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信。

TCP/IP 模型在原有OSI模型的基础上进行了简化,由原先的八层(应用层、表示层、会话层、传输层、网络层、数据链路层、物理层)变成了四层(应用层、传输层、网际层IP、网络接口层)

TCP HTTP UDP SOCKET四者的关系?

IP是网络层协议,相当于高速公路;TCP和UDP是传输层协议,相当于卡车;HTTP是应用层的协议,相当于货物;SOCKET是TCP/IP网络的API,相当于码头和车站

  • TCP/IP是一个协议组,可以分为四个层次:网络接口层、网络层、传输层、和应用层。
  • 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
  • 在传输层中有TCP协议和UDP协议。
  • 在应用层中有FTP、HTTP、TELNET、SMTP、DNS等协议。
  • HTTP是从Web服务器传输超文本到本地浏览器的传送协议。

TCP和UDP的区别

TCP(Transmission Control Protocol)传输控制协议:类似打电话

  • 面向连接、传输可靠、有序、传输大量数据、速度慢、对系统资源要求多、程序结构复杂
  • 每一条TCP连接只能是点到点的
  • TCP首部开销20字节

UDP(User Data Protocol)用户数据报协议:类似发短信

  • 面向非连接、传输不可靠、无序、传输少量数据、速度快、对系统资源要求少、程序结构简单
  • UDP支持一对一,一对多,多对一和多对多的交互通信
  • UDP首部开销小,只有8个字节
0%