java复习之网络

网络的基础理论 —— 网络分层

**1 OSI七层模型

**
应用层:
表示层
会话层
传输层
网络层
数据链路层
物理层
*

TCP/IP五层模型*

应用层: 应用程序间沟通的层,为用户的进程提供网络通信服务
为操作系统或网络应用程序提供访问网络服务的接口。
数据传输基本单位为报文
协议: 域名协议DNS协议 HTTP协议 SMTP协议
传输层: 负责数据能够从发送端传输到接收端,负责可靠传输
网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。
传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;
协议:TCP协议 UDP协议

网络层:负责提供基本的数据传送功能,负责地址管理和路由器的选择。让每一块数据包都能够到达目的主机(但不检查是否被正确接收)网络层负责对子网间的数据包进行路由选择。此外,网络层还可以实现拥塞控制、网际互连等功能;
重要的设备:路由器。
协议: IP协议

数据链路层:其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。
将网络层传下来的数据报封装成帧,在同一 个数据链路层的两个设备之间传输。

                  数据链路层为网络层提供可靠的数据传输;
                  基本数据单位为帧;
                  主要的协议:以太网协议 MTU协议 ARP协议;
                  两个重要设备名称:网桥和交换机

物理层: 负责光/电信号的传递方式

传输的基本流程之五层协议

发送方的摸一个应用程序发生一个数据或者一段信息
1 应用层对数据进行第一次的封装+ 应用标识
2 传输层对数据进行第二次的封装 + TCP头(UDP头)
3 网络层定义数据进行第三次的封装 + IP头
4 链路层对数据进行第四次的封装 + 以太网协议字段
5 物理层对数据以光电信号将数据传输到接受方的数据链路层
6 接收方在链路层对数据进行最外层封装信息(以太网协议字段)的解析,并在解析完成后将这一层头部信息丢弃;
7接收方在网络层对数据进行第三层分装信息的(IP头)解析,解析完成之后将这一层的头部信息丢掉;
8 接收方在传输层对数据进行第二层封装信息的解析(TCP/UDP头解析),,解析完成之后将这一层的头部信息丢掉;
9 接收方指定应用程序接收到完整信息,此时一个完整的网络传输完成

在这里插入图片描述

数据包的封装和分用

分装: 发送数据时候 每层协议都会在数据包的头加上一个首部 称为封装 。首部信息包含了数据的来源与目的,长度等信息。

**分用:**接受数据时候 需要从物理层到应用层一层一层的将这些头部信息剥离,最终对方用户看到的只是发送方发送的数据或信息。

头部所包含的信息都有啥?
在网络通信中每一条数据都必须带有一些关键信息:源端口号 源IP地址 目的端口号 目的IP地址 协议号 称为五元组。
UDP 协议字段包含: 16位的源端口号 16位的目的端口号 16位的UDP长度 16位的UDP校验和 校验发送的数据和接受到的数据是否相同。
在这里插入图片描述
TCP协议字段 包含 16位的源端口号 16位的目的端口号 16位的校验和
在这里插入图片描述
IP协议字段 包含32位的源IP地址 32位的目的IP地址16位的检验和 16位的总长度
在这里插入图片描述
数据链路层 以太网协议字段
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值