计算机网络协议

80 阅读2分钟

一、定义

在网络通讯协议下,不同计算机上运行的程序,进行数据传输称为网络编程。

二、OSI和tcp/ip模型数据发送原理

OSI参考模型:从发送端的最高层逐层往下发送,到物理层变成二进制数据,发送到接收端的物理层后,将二进制数据逐层发送到最高层,转为明文。

发送端----(明文)---->应用层->表示层->会话层->传输层->网络层->数据链路层->物理层 ------(二进制数据)----> 接收端物理层
接收端----(二进制数据)---->物理层->数据链路层->网络层->传输层->会话层->表示层->应用层------>(明文)

tcp/ip参考模型:OSI太过于繁琐和理想化,所以出来了tcp/ip模型,该模型简化了OSI模型,能够大大提高性能。

应用层(应用层、表示层、会话层)->传输层->网络层->物理链路层(数据链路层、物理层)

tcp/ip模型各层常见的协议:

应用层(应用层、表示层、会话层):http、https、DNS等

传输层:tcp、udp等

网络层:ip等

物理链路层:硬件设备01010101

三、tcp和udp协议的区别

tcp协议:面向有连接通信协议,需要和接收端进行握手通信,发送数据速度慢,但是不易丢失,无大小限制。

udp协议:面向无连接通信协议,不需要指定接收端,谁都可以接收,该协议发送数据速度快,但是不安全,数据容易丢失,有大小限制(64k)

java实现udp发送数据:

image.png

java实现udp接收数据:

image.png

四、三次握手四次挥手

三次握手四次挥手就是发生在tcp协议的连接上,tcp协议发送数据,是面向有连接的协议,也就是目标是存在的,而且必须连接的。

三次握手

1、客户端发送连接请求

2、服务端接收到请求后,向客户端发送同意连接信息

3、客户端连接服务端

四次挥手

1、客户端发送断开请求

2、服务端接收到请求后,向客户端发送信息,表示等传输通道的数据发送完成

3、服务端向客户端发送信息传输完毕,可以断开连接

4、客户端断开连接