第一天笔记

本文详细介绍了OSI七层模型的各个层次,包括应用层、表示层、会话层、传输层、网络层、数据链路层和物理层的功能。特别强调了传输层的TCP和UDP协议的区别,如TCP的面向连接、可靠性和三次握手过程,以及UDP的无连接、速度快但不可靠的特性。
摘要由CSDN通过智能技术生成

开放式互联参考模型一共有7层,从高到低分别是应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。
应用层
应用层提供各种各样的应用层协议,这些协议嵌入在各种我们使用的应用程序中,为用户与网络之间提供一个打交道的接口。

表示层
数据格式进行编译,对收到或发出的数据根据应用层的特征进行处理。

电脑从网卡收到一串数据时,这些数据在电脑中都是都是二进制的格式,我们人类是看不懂二进制的,就需要表示层帮忙将这些二进制转换成我们能够识别的数据(即抽象语言)。

会话层
负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。

建立会话  保持会话    断开会话

传输层
端到端的数据传输 ----- 实现应用对应用的数据传输

服务:即提供某种功能。

0为保留端口号

1-1023:知名端口号,也叫系统端口,这些端口只有系统特许的进程才能使用;

20、21端口:FTP 文件传输服务

22端口:SSH 远程连接服务

23端口:TELNET 终端仿真服务

25端口:SMTP 简单邮件传输服务

53端口:DNS 域名解析服务

80端口:HTTP 超文本传输服务

443端口:HTTPS 加密的超文本传输服务

3306端口:MYSQL数据库端口

3389端口:WIN2003远程登陆

8080端口:TCP服务端

8888端口:Nginx服务器

网络层
基于数据包的逻辑地址(ip,变动的地址)进行转发,寻找网络中目的的位置,并在去往目的的多条路径中选择一条最佳的路径。(即逻辑寻址)

在上面传下来的数据包装加上源IP和目标IP(32位二进制)

源地址:发起的这个数据包的那台设备的地址,源IP在传送至目的之前是不会改变的;

目的地址:我要访问的对象

数据链路层
他是由2个子层MAC(介质访问控制层) + LLC(逻辑链路控制层)组成

同样进行包装加工添上源MAC地址(48位二级制)和目标MAC地址

介质访问控制层:控制与连接物理层的物理介质

逻辑链路控制层

物理层
物理层处于整个标准的最底下一层,它与数据链路层一样,工作在单条线路上,只负责线路两端的通信维护

物理层通过各类协议定义了网络的机械特征、电气特征、功能特征和规程特征。


封装
OSI/RM参考模型的许多层都使用特定方式描述信道中来回传达的数据。数据在从高层向低层传达的过程中,每层都对接收到的原始数据添加信息,通常是附加一个报头和报尾,这个过程称为封装。

传输层的TCP和UDP协议

两者的区别
1、TCP是面向链接的协议,而UDP是无连接的协议;

2、TCP协议的传输是可靠的,而UDP协议的传输 “尽力而为”;

3、TCP协议可以实现流控,而UDP不行;

4、TCP可以分段,而UDP不行;

5、TCP消耗资源较大,传输效率低。UDP消耗资源较小,速度快;

关于TCP和UDP的使用场景
TCP协议更适应于对可靠性要求较高,但是对传输效率和资源占用要求较低的场景。UDP更适应于对传输效率要求可靠较高,可靠性要求较低的场景

区别一
什么是面向连接?
在正式传输之前,先使用预先的协议,建立点到点的链接。

TCP建立的连接实际建立了一个双向的会话连接,即通讯双方都可以向对方发送数据。

什么是无连接?
相当于没有建立连接,直接传输数据。

区别二
TCP协议的传输是可靠的,而UDP协议的传输 “尽力而为”;

TCP协议可靠性:确认机制、重传机制(没有收到对方的确定,一直传输这个数据)、排序机制(保证数据按顺序传输)、流控机制

区别三
TCP协议可以实现流控,而UDP不行;

发送端可以一次发送多个数据包,接收端可以只发送一个ACK。

区别四
TCP可以分段,而UDP不行;

TCP数据有序号,可以分开发送。然后把数据拼起来。

区别五
TCP消耗资源较大,传输效率低。UDP消耗资源较小,速度快;

关于TCP的三次握手
第一次

第一次握手:建立连接时,客户端发送syn包(seq=x,x为随机值)到服务器,等待服务器确认。

第二次

第二次握手:服务器收到syn包,必须确认客户端的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y,y为随机值),即SYN+ACK包。(x与y不一样,两个不同的随机值)

第三次

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入TCP连接成功状态,完成三次握手。

完成三次握手,客户端与服务器开始传送数据。


第一次建立连接失败:
客户端:数据丢失 --- 重传;网路延迟 --- 重传 。

服务端:数据丢失 --- 没反应; 网络延迟 --- 收到两次请求,发两次确认包。

第二次失败:
客户端:数据丢失 --- 重发一次的建立连接包;网络延迟 --- 重传。

服务端:数据丢失 --- 重传[SYN,ACK]包;网络延迟 --- 重传 。

第三次失败:
客户端:数据丢失 --- 重发ACK;网络延迟 --- 重传。

服务端:数据丢失 --- 重发一次的建立连接包;网络延迟 --- 重传。

为什么是三次,而不能是两次:
发数据包每次都要对方回复,并且确保两端的信息收发没有问题。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值