各种分层
OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。
五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。
各层主要作用和协议
应用层
主要作用:产生流量的应用
协议:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS
表示层
主要作用:数据压缩、加密、二进制处理
协议:JPEG、MPEG、ASII
会话层
主要作用:建立、管理和终止会话
协议:NFS、SQL、NETBIOS、RPC
传输层
主要作用:可靠传输、流量控制 (数据段)
协议:TCP、UDP、SPX
网络层
主要作用:路径选择、规划IP地址(加上IP地址->数据包)
协议:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP(路由器)
数据链路层
主要作用:透明传输、差错检测、打包成数据帧(数据包加上物理地址->数据帧
协议:PPP、FR、HDLC、VLAN、MAC (网桥,交换机)
物理层
主要作用:通过媒介传输比特,确定机械及电气规范
协议:RJ45、CLOCK、IEEE802.3 (中继器,集线器)
发送数据步骤:
1、应用层准备发送文件
2、传输层创输出把数据分段 并且编号
3、网络层把数据段加上网络地址 打包成数据段
4、数据链路层 加上物理地址 打包成数据帧,使用自己的子网掩码 判断目标地址在
数据的封装
分析主要的层
数据链路层
一、解决三个问题
1、封装成帧 数据包->数据帧(加帧头帧尾)用来区分一帧帧数据
2、透明传输(增加\删除转移字符)
3、差错检测 (比如一帧有多少个字节数据)CRC 只负责无差错接收 发现错误立刻丢
二、两种情况的数据链路层
1、点到点信道的数据链路层 PPP协议(点到点协议)现成的协议 能解决上面三个问题 并且更加优化
①大多数用于广域网中使用
②面向字节字节传输 最小单位是字节
2、广播信道的数据链路层 总线型
①局域网中使用
② 使用的协议 CSMA/CD(载波监听/多点接入)
3、以太网
①MAC地址
②数据段有效长度:46 ~ 1500 字节间 有效的MAC帧长度:64 ~ 1518字节
4、数据格式: 目标地址 + 源地址 + 传输类型 + 数据 + FCS(取包时候会去掉)
5、以太网
①集线器作用:转发数据(所有接口共享转发数据)
①网桥作用:记录MC地址控制是否允许转发(隔绝冲突域)
③交换机:端口带宽独享 基于MAC地址转发 可以学习记录MAC地址
优化以太网:集线器->网桥->交换机
网络层
①主要提供的服务是:选择网段来进行转发数据包,不负责重传、丢失。功能主要由路由器实现。
②路由器:路由器有三层主要在网络层工作的,跳到那个路由理由跳转表决定(静态:管理员配置\动态:自己学习)。
网络协议
一、ARP协议 将IP地址通过广播(只能在一个网段里面) 根据IP地址获取物理地址的一个TCP/IP协议 能广播收到对方的MAC地址(不一定是目标IP地址的MAC地址,可能中间节点的MAC地址) 拥有高速缓冲
路由器隔绝广播
二、ICMP协议(依赖IP协议)
①ping
②pathping 跟踪数据包路径 计算丢包情况
③tracert 用于确定 IP 数据包访问目标所采取的路径
三、IGMP协议(依赖IP协议)使主机能够在本地网络上收发组播分组
四、IP协议
五、静态动态路由
①静态路由 需要管理员告诉路由器所有没有直连的网络下一跳给谁
网络规模较小的时候 不能够自动调整路由
②动态路由
RIP 协议 周期性(30秒 可检测路由是否失效)广播路由表 路由器知道每个网络的跳数 会自动选择最佳路径
优先条数最小的网络路径 最大跳数15跳 即不适合网络规模较大的网络
OSPF 协议 走带宽最优的路径(2跳普通网线和3跳光纤网线 优先选择光纤网线)
传输层
功能: 可靠传输、流量控制
一、两个协议
TCP 将需要传输的文件分段传输通讯使用 建立会话(即session需要开销) 建立可靠传输
例子:QQ传文件
面向字节流的协议:
每条TCP协议有两个点:即两个端口 socket = 地址 + 端口
TCP的可靠传输:
发送一次返回ACK 效率低-> 字节为单位的滑动窗口
①如果实现可靠传输
数据包校验
ACK 确认
超时重发
②如何实现流量控制
窗口大小,窗口扩大因子M,机理,窗口探测数据段
③拥塞控制(防止传输数据太多出现网络的拥塞情况)
1.慢开始 + 拥塞控制
2.快重传 + 快恢复
UDP 一个数据包就能完成数据通讯时使用 不需要分段 不需要建立会话 不需要流量控制 不可靠传输
例子:QQ聊天、解析DNS域名地址 屏幕广播
二、和应用层之间的协议
TCP: RDP-3389(远程桌面) HTTP-80 HTTPS-43 FTP-21
UDP: TFTP-69 SNMP-161 RIP-520 DNS-53
三、服务和应用层协议之间的关系
安装了服务就会一直去侦听端口
可以再网卡设置开启指定端口 实现服务器网关安全
四、端口
16位端口号进行标志(0-65535) 在本地唯一 不同端口没影响
后面再完善、待续
工作块2年,发现基础知识很重要,应用程序开发在能走多远很多时候由基础知识决定