网络变大------>无限距离,无冲突,单播------->交换机--------->MAC地址-------->泛洪------->泛洪范围-------------->路由器--------->IP地址-------->ARP---------->广播---------->广播域(泛洪域)
重点:MAC地址-------交换机
IP地址--------路由器
传输层(TCP/UDP)
名词
计算机中
应用层 抽象语言(C语言,JAVA等)------->编码
表示层 编码---------->二进制
会话层 应用程序内部区分地址
传输层 TCP/UDP 提供端口号 分段(受MTU的限制)
网络层 internet协议------IP -----IP地址(二进制)
数据链路层 =LLC+MAC
逻辑链路访问控制层 -------LLC 功能:校验(将数据发送后,要判断数据是否完整-----在下载页面找MD5值(16进制数)------哈希算法(hash)--------不等长输入,等长输出------算完后有128位MD5值)
介质访问控制层(MAC) 控制物理硬件 MAC地址
物理层(第一层)
应用层 | 应用程序层(工厂----加工数据) |
表示层 | |
会话层 | |
网络层 | (物流----运输货物) |
逻辑链路访问控制层 | |
介质访问控制层 | |
物理层 |
一个电脑的计算效率有限-------1.升级硬件
2.增加硬件
两台电脑相连(通过网线)-------对等网
物理层增加一根电线,两个网卡
数据传输过程:数据输入----应用层(将抽象语言转换成编码)---表示层(将编码转换成二进制(数据))----介质访问控制层(控制网卡,芯片将二进制以电波的形式(长波1,短波0)发送到对方的芯片上----将二进制读出来)-----表示层(二进制转换成编码)------应用层(编码转换成抽象语言)
将两个电脑的网络变大:1.增加节点(终端)【加电脑】-----带宽,流量都增加
2.距离延长(官方规定传输距离不超过100米----RJ-45双绞线)
1.加距离
两电脑之间的距离超过100m------电流电压下降-------距离越长-------对方电脑无法识别传输的数据
在两电脑之间加 中继器(放大器)------加大功率
中继器(延长距离有限)外接电源-----加压
2.加终端--------通过HUB(集线器)【加压】连接多台电脑
A----发消息----B B,C,D都能收到消息
集线器的缺点:1.不安全 2.效率低 3.地址 4.冲突(物理)
1.地址-----MAC地址------48位二进制 全球唯一 出场烧录到网卡芯片 16进制显示
查看MAC地址方法:1.右击网络(菜单栏中)-------打开“网络和internet”设置--------更改适配器选项----双击网络------详细信息-----物理地址(MAC地址)
2.windows+r键---运行---cmd+enter----ipconfig/all+enter
A----发消息-------B 二进制前加标签(MAC地址)(源MAC是A,目标MAC是B) -------数据进入hub进行加压----发送给B,C C将数据丢弃
2.冲突------CSMA/CD(载波侦听多路访问/冲突检测)----排队-------导致效率更低
A发电波时,B,C只能收电波 等A发完后,B,C发
等待----若信息同时发出则设置随机值-----再尝试-------效率低
网络变大要求:
1.无限的传输距离
2.无冲突-----所有节点均可同时收发数据
3.单播-----一对一的传输
交换机:工作在介质访问控制层(二层)
单播:当数据电流进入交换机后, 交换机先将电流识别成二进制,然后先看源MAC地址,将该MAC地址进入接口映射记录到本地MAC地址表中,再看目标MAC地址,查询本地MAC地址表,若表中存在目标MAC的记录--------单独向该接口复制流量
若没有记录,将泛洪流量
泛洪(洪泛)----向其他接口复制流量(除入接口之外)
IPV4地址:32位二进制 由点分十进制显示
ARP:地址解析协议 通过广播(目标MAC为全F,将请求消息发送到整个泛洪范围)
网络速率:约等于(带宽/8)*85% 差不多11M
将1G的数据包(贴上IP,MAC)直接传送给B------传不过去--------分段传输
MTU:最大传输单元,默认为1500个字节
8个二进制=1个字节 1024个字节=1b 1024b=1B 1024B=1K 1024K=1M 1024M=1G 1024G=T
端口号---0-65535 其中1-1023为注明端口 (静态端口) 1024---65535 高端口( 动态)
终端访问服务器时,终端使用动态端口随机对应本地的各个进程,目标端口使用固定的端口号来访问特定的服务;
UDP:用户数据报文协议
非面向连接的不可靠传输协议--------仅完成传输的基本工作,没有额外的功能。
A发送✨给B-------A的应用层,表示层,会话层先将1M转化成二进制-----传输层【分段----1500一段】,分出来的每一段前贴一个报头(主要是端口号)
16-bit source port 源端口 | 16-bit destination port 目标端口 |
16-bit UDP length UDP长度 | 16-bit UDP checksum 校验和 |
data 数据 |
TCP:传输控制协议
面向连接的可靠传输协议------在完成了传输的基本工作上,保障传输的可靠性
面向连接:在通讯之初,使用三次握手建立端到端的虚链路;
可靠传输的4种机制:确认(ACK) 重传 排序 流控(滑动窗口机制)
16-bit source port 源端口 | 16-bit destination port 目标端口 | ||||||||||
32-bit sequence number 序列号 | |||||||||||
32-bit acknowledgment number 确认号 | |||||||||||
4-bit header length | resv | ns | cwr | ece | urg | ack | psh | rst | syn | fin | 16-bit window size 窗口号 |
16-bit TCP checksum 校验和 | 16-bit urgent pointer | ||||||||||
options | |||||||||||
data |
使用情况:UDP--------不可靠,传输速度快------视频、语音------对实时性要求高
TCP--------可靠,传输速度慢---------网页----------对数据的完整性要求较高
协议/端口号
IPV4报头
TTL:生存时间(一般有255 128 64)
包(被路由器传一次--------一跳---------TTL值-1---------减到0)---------被丢弃
名词注解:
ARP:地址解析协议--------通过一种地址来获取另一种地址
AARP 正向ARP:已知同一广播域内,对端设备的IP地址,通过二层全F广播寻找来获取该设备的MAC地址
反向ARP:通过本地的MAC地址获取本地的IP地址
无故ARP:设备在刚使用IP地址时,将主动向外进行正向ARP请求,但被请求的IP为本地的IP;------------------用于地址冲突检测
OSI(系统互联参考模型)7层参考模型:非实际网络使用,仅供参考
TCP/IP协议栈道(模型):4层/5层
PDU:协议数据单元 各层数据的单位
应用层:报文
传输层:段
网络层:包
数据链路层:帧
物理层:比特
封装:数据从高层向低层的加工过程,过程中添加每层的报头,数据变大;
解封装:对封装的逆向行为,对数据识别转发的过程;
A发下✨给B/C-----应用层将 ✨转换成二进制------4层分段,每一段的前面贴报头TCP/UDP(一定有端口号)---------3层在4层前面加上IPV4的报头---------2层在3层前面加MAC报头,在数据包的最后加FCS(校验和)----------------------------------------------封装
A--------B
源IP:1.1 目标IP:1.2
源MAC(A),目标MAC(B)
ARP请求
数据包从5层加工到1层----------电流---------交换机(2层设备)再从1层解到2层看MAC,先看源MAC,再看目标MAC--------从2层封回到1层--------B
A------------C
源IP:1.1 目标IP:1.3
源MAC:A 目标MAC:C
数据包从5层加工到1层----------电流---------交换机(2层设备)再从1层解到2层看MAC,先看源MAC,再看目标MAC--------从2层封回到1层--------路由器---------收到1层电流,读到2层,看目标MAC(自己),拆2层,看3层的目标IP(不是自己)---------3层重新向1层封装(先装2层头部---------新源MAC:2.1,目标MAC:2.2------1层)--------电脑-------1层------5层