本文已参与「新人创作礼」活动,一起开启掘金创作之路。
IP地址
描述了网络上的一个主机的位置
端口号
描述了一个主机上的某个应用程序
协议
进行有效通信,就要明确通信协议。
本质就是对发送的数据的格式进行约定。
协议分层
就是把一个大的复杂的协议进行拆分。,让小的协议负责一部分工作具有更好的解耦和封装
互联网分层
OSI七层网络模型(教科书里的)
1.应用层
2.表示层
3.会话层
4.传输层
5.网络层
6.数据链路层
7.物理层
TCP/IP分层模型
1.应用层
和应用程序密切相关。
2.传输层
只关注起始端和结束端之间的通信,只关注最后数据到了没有,不关注过程
3.网络层
网络中的任意节点和任意节点之间的通信(不用靠线连接)会规划最好的线路
4.数据链路层
负责完成相邻的两个设备之间的通信(靠一根线连接的)
5.物理层
硬件设备
封装
分用
数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的“上层协议字段”将数据交给对应的上层协议处理,称为分用。
就是上面图片从下往上走
TCP UDP
1.TCP有连接 UDP无连接
有没有连接就像打电话和发微信这样的区别,打电话一定要打通了才能传输数据,
微信的话,不管对面怎么样,都可以发送数据
2.TCP可靠传输 UDP不可靠传输
可靠传输就在于TCP的三次握手和四次挥手来判断对面是否能接收到消息
3.TCP面向字节流 UDP面向数据报
面向字节流就是以字节为单位传输
面向数据报就是以数据报为单位传输
4.UDP全双工 UDP全双工
全双工就是一条链路双向通信
半双工就是一条链路单向通信
当然他们之间的差距还有很多,后续会跟进。