TCP和UDP和IP和HTTP和socket

Posted kikis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP和UDP和IP和HTTP和socket相关的知识,希望对你有一定的参考价值。

一、计算机网络的两种模型

在计算机网络里,有两种常见的参考模型即:OSI参考模型和TCP/IP参考模型。TCP本身是传输层的协议, 而TCP/IP是一种网络参考模型。

1. OSI七层参考模型

      主要是用来清晰的了解网络结构的分层。这一模型和相关的协议并没有被使用, 但它具有普遍的意义就是对于讨论网络的体系结构中的每一层的功能。它将服务,接口和协议的概念区分开来。每一层的接口都告诉它上面的进程如何访问本层。而且每层用到的对等协议是本层自己内部的事情,不影响上层。它同时支持面向连接和无连接的通信,但是传输层只支持面向连接的通信。

技术图片

2. TCP/IP 模型:

      实用性高于七层。它对服务,接口和协议没有明确的区分,下图也是人们对它进行了改进,使它更像OSI。它的网络层只支持一种面向无连接的服务, 但传输层同时支持TCP(面向连接)和UDP(面向无连接)两种通信模式。

技术图片

二、TCP和UDP的区别和联系

1. 从理论看区别

技术图片

TCP是面向连接的,在传输数据前必须建立连接,传输完成后必须关闭连接。且连接建立需要经过3次握手, 连接断开需要4次挥手。连接方式是点对点的, 无法做到多播。

UDP面向无连接,当一端需要发送报文时, 通过UDP套接字发送报文,UDP不保证有序, 不保证一定被接收端收到,且没有拥塞的控制。

2. 从编码上区别

 技术图片

二、TCP和IP的区别和联系

1. TCP协议

传输控制协议(Transmission Control Protocal),是一种基于IP协议的传输层协议。主要特点是3次握手建立连接,4次挥手断开连接。

2. IP协议

因特网协议(Internet Protocol),位于网络层,IP协议规定了数据传输时的基本单元(数据包)和格式,IP协议还定义了数据包的递交办法和路由选择。

总结:整个网络中的传输流程是,IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层—TCP层;相反,IP层也把从TCP接收来的数据包传送到更低层。也就是,IP提供基本的数据传送,而高层的TCP对这些数据包做进一步加工,如提供端口号等等。

三、HTTP

应用层协议,它是建立在TCP/IP协议之上的一种应用协议。缺省端口是80,提供服务端和客户的请求应答的过程,请求结束后, 主动释放连接。

 

 

以上是关于TCP和UDP和IP和HTTP和socket的主要内容,如果未能解决你的问题,请参考以下文章

TCP和UDP和IP和HTTP和socket

TCP与UDP的区别

tcp和udp有啥区别,tcp和udp各有啥优缺点

细说http - tcp - udp - socket - protobuf协议

认识UDP和TCP

TCP和IP的区别是啥??