目录
计算机网络的诞生及发展
1946年2.14日,美国宾夕法尼亚大学为了美国军方用于导弹计算,发明了世界上第一台计算机,而计算机改变并且引领了世界的发展。
计算机具有强大的计算能力,迅速的在各个科研单位广泛应用。
什么是网络?网络的核心是什么?
网络:使用连接设备将终端设备通过传输介质连接起来,进行数据的传输。
终端设备: 个人电脑 手机 ipad 等设备
连接设备:路由器、交换机、网桥、中继器等设备
传输介质:有线和无线传输介质
OSI参考模型----开放式参考互联模型
OSI是由ISO(国际标准化组织)在1979定颁布的,定义了数据产生过程的标准格式,不同的系统不同的软件在产生数据时定义了统一的标准。将数据的产生过程分为了7层,提出了分层的思想。
分层
分层:不同层实现不同的功能,集合起来定义了数据的产生过程。
分层的优点:
1.降低了层次之间的关联性,减少了某些层协议对其他层的影响
2.便于指定标准化
3.方便学习和理解
4. 各个层之间清楚自己的目标并且相对独立,便于后期单独协议的增强升级
OSI七层参考模型:
模型 | 作用 |
---|---|
应用层 | 对应用程序提供接口。 |
表示层 | 进行数据格式的转换,以确保一个系统生成的应用层数据能够被另外一个系统的应用层所识别和理解。 |
会话层 | 在通信双方之间建立、管理和终止会话。 |
↑ | 上三层为控制层面 |
↓ | 下四层为数据层面 |
传输层 | 建立、维护和取消一次端到端的数据传输过程。控制传输节奏的快慢,调整数据的排序等等。 |
网络层 | 定义逻辑地址;实现数据从源到目的地的转发。 |
数据链路层 | 将分组数据封装成帧;在数据链路上实现数据的点到点、或点到多点方式的直接通信;差错检测。 |
物理层 | 在媒介上传输比特流;提供机械的和电气的规约。 |
应用层
接收用户的数据,人机交互的接口,面向的应用程序。(可以理解为不同的软件产生了数据,这些数据要有对应的协议或者服务定义,应用层定了这些服务例如HTTP 、DHCP、DNS、SMTP 等等)
表示层
将逻辑语言(软件语言)转换为机器语言(二进制语言),翻译 。(数据的编码解码、数据的加密解密、数据的压缩和解压缩等等)
语言介绍: 1.自然语言(中文 英文 日文等等)2.逻辑语言(也称为编码语言,通过不同的编码方式进行编码定义,例如国际码 Unicode 中国的GBK、GB2312、BIG5等等)3.机器语言(也就是计算机能够直接处理的二进制语言)
会话层
管理通信,针对传输的每一种数据建立(管理:建立、维持、终止)一条会话虚链接。
虚连接:没有对端
注意
上三层为控制层面
下四层为数据层面
传输层
定义数据的传输方式,以及定义用于在数据层面区分不同流量。
区分流量
通过传输层端口号进行区分(不同的端口号代表了不同的流量)
端口号范围:0-65535
(16个二进制 16个0——16个1 0保留从一开始 部分情况0代表全部端口号)
端口号分类:静态端口号(也称为知名端口号):1-1023
动态端口号:1024-65535
静态端口:每个端口号定义了特定的服务(流量)
特点:端口号与流量之间存在一一对应并绑定的关系
常见端口号:
域名系统 (DNS)— TCP/UDP 端口 53
超文本传输协议 (HTTP) — TCP 端口 80
HTTPS——TCP 端口 443
简单邮件传输协议 (SMTP)— TCP 端口 25
邮局协议 (POP)— TCP 端口 110
Telnet ——— TCP 端口 23
SSH ——— TCP 端口 22
动态主机配置协议 (DHCP)— UDP 端口 67 和端口 68
文件传输协议 (FTP)— TCP 端口 20 和端口 21
动态端口:大多数服务使用随机的动态端口号进行区分
特点:动态端口与流量之间存在一一对应关系(但并无绑定)
定义数据的传输方式
分为可靠和不可靠传输方式。
使用不可靠传输方式数据特点:
1.大流量
2.同步性要求较高
3.对数据的丢失不敏感
(如电视直播)
可靠的传输方式是指保证传输完全传输(丢包,不是指安全)
可靠的传输:需要一些机制保证是可靠的,传输效率比较慢
什么是可靠的传输协议?如何保障可靠传输?
保证可靠性:
1.确认机制
2.重传输机制
什么是面向连接?如何保障面向连接?
面向连接是在传递数据之前进行协商,确保数据在后续的发送过程中双方能够发送以及能够发送到数据。
TCP
TCP:传输控制协议,是一种面向连接的可靠的传输协议。
三次握手
保障面向连接:TCP三次握手机制
(需要保证可靠性,三个包都需要保证可靠性)
PS:三次握手机制得作用是保障面向连接
确认机制
1、显示确认(必须回复确认)
2、隐式确认(不回复就默认)
四次挥手(断开)
TCP会话断开机制:四次挥手(断开)
报文段1:主动关闭方向被动关闭方发送结束报文段。
报文段2:被动关闭方发送结束报文段确认,此时主动关闭方数据已经传输完毕。
报文段3∶被动关闭方数据也发送完毕,发送结束报文段。
报文段4:主动关闭方对结束报文段进行确认。
注意:
四次挥手报文段2、3不能像三次握手一样合并。
被动关闭方发送报文段2只是确认主动关闭方发来的结束报文段,但并不代表自身的数据已经传输完毕。当断开连接的时候,一个方向的断开,只是说明该方向数据已传输完毕,而另一方向或许还有数据,所以要等到另一个方向数据也全部传输完成后,才能实现三次握手。但是这个时间不确定,因此会造成主动关闭方的结束报文段长时间未得到响应而进行超时重传等等。
TCP数据结构
TCP优化机制
1.重排序(数据需要排序才能正常使用,但接收顺序不一定正确,需要重排序)
2.滑动窗口机制(稳定多发数据,不稳定少发数据)
TCP主要应用环境
web浏览器 、电子邮件、FTP 等协议
UDP
用户数据报协议,是一种非面向连接的不可靠传输协议。
特点
1.无连接(没有三次握手不需要提前进行协商)
2.不可靠传输(尽力而为)
3.简单
4.低开销
UDP数据结构
UDP主要使用环境
视频流、IP语音(VOIP)
MTU:最大传输单元 默认为1500字节
PDU:协议数据单元,数据在不同层的表现形式。
4层数据称为segment
单位
bit—比特 Byte—字节 1个字节=8比特(8bit=1Byte)一个汉字2节
最小单位bit(一个二进制数)
1000bit=1Kbit
1000Kbit=1Mbit
1000Mbit=1Gbit
1000Gbit=1Tbit
1000Tbit=1Pbit
1000Pbit=1Ebit
速率单位:100Mbps……一秒钟传递100M比特的数据(行业一般是这个)
100MBps……一秒钟传递100M字节数据(流量指的是这个)
换算关系:bps/8=Bps
网络层
作用:编址、寻址(路由)
编址协议: IPV4、IPV6、IPX、Appletalk 等
IPV4:互联网协议版本4 ,采用了32个二进制进行标识
组成方式:32个二进制
书写方式:点分十进制
完整的IP地址:IP地址部分+网络掩码
IP地址:32个二进制,0和1组成
网络掩码:32个二进制,连续的1和连续的0组成(255=1111 1111),连续的1代表网络位,连续的0代表主机位。
IP地址分类
A类地址: 第一位固定为0
0XXX XXXX —0-127(1-126),网络掩码默认为 255.0.0.0
存在224IP地址,27个网段(0-128)
看前8个,由于网段第一位固定为0,所以27,地址为32-8,为224
B类地址:前两位固定为10
10XX XXXX—128-191,网络掩码默认为255.255.0.0
存在216 IP地址,214 个网段(128-191)
看前16个,由于网段第一位固定为10,所以214,地址为32-16,为216
C类地址:前三位固定110
110X XXXX—192-223,网络掩码默认为255.255.255.0
存在28 IP地址,221个网段(192-223)
看前24个,由于网段第一位固定为110,所以221,地址为32-24,为28
D类地址:前四位固定为1110
1110 XXXX—224-239,组播地址,无掩码
E类地址:前四位固定为1111
1111 XXXX—240-255,科研地址
同一网段:网络位相同
注意:以上计算未去掉特殊地址,需要减2
(原因:减 2 的原因是在 IP 地址中,有两个 IP 是特殊的,分别是主机号全为 1 和 全为 0 地址。)
A、B、C----单播地址
D—组播地址
E—保留地址
单播—一对一
组播—一对多
广播—一对所有
特殊地址
1、0.X.X.X 无效地址(保留地址),0.0.0.0 无效地址 占位
2、127.0.0.1 本地测试 (127.X.X.X 测试地址)
3、网络号,网络位不变 主机位全为0 的地址(描述一个网段)
192.168.1.1 255.255.255.0
192.168.1.0 255.255.255.0
4、受限广播地址,255.255.255.255
5、定向(直接)广播地址,网络位不变,主机位全为1
192.168.1.1 255.255.255.0
192.168.1.255 255.255.255.0
6、本地链路地址:link-local { 169.254.0.0 255.255.0.0 }
公有地址:具有全球唯一性标识地址
私有地址:不具唯一性标识的地址
10.0.0.0 255.0.0.0
172.{16-31}.0.0 255.255.0.0
192.168.X(0-255).0 255.255.255.0
三层数据称为packet
三层IP数据包结构
数据链路层
作用:针对不同的传输介质定义不同的二层封装
分为两个子层: LLC—逻辑链路控制子层(标识上层使用了何种协议)
MAC—介质访问控制子层 (二层进行地址的识别)
数据链路层的功能: 组帧、物理编址、流量控制、差错控制、接入控制
MAC地址介绍:48个二进制构成,书写方式:减分或者点分十六进制标识
减分十六进制书写:60-F2-62-3C-E3-53
点分十六进制书写:60F2.623C.E353
构成:
前24位:OUI(统一资源标识符),也称为厂商ID
后24位:interface ID(接口标识符),也称为产品ID
二层数据称为frame
二层数据帧结构:
物理层
将二层的数据帧转换为物理传输介质中比特流,关注机械特性、电学特性、光学特性等。
传输介质:有线介质:同轴电缆、双绞线、光纤
无线介质:WiFi、蓝牙、wimax等
同轴电缆
网络早期使用,速率较低,优点是耐用,传输距离长,抗干扰强。
同轴电缆这种介质在桌面环境比较少见了,主要是造价比较贵,不易弯折不利于布线,但是其抗老化耐腐蚀,有利于户外布线,多用于射频领域,基站,wifi,电视信号传输。
双绞线
8根铜丝,两两相绞
分类:
屏蔽双绞线 — 在绝缘皮下方还有一圈金属壳,主要为了屏蔽外界干扰 — 应用于强干扰环境
非屏蔽双绞线 — 应用于日常环境
线类:分为3类、4类、5类、超5类、6类、超6类等常见的5类,超5类线。线类越高,铜丝越粗,绞的越紧 — 速度更快,抗干扰能力更强
线序
568A线序:绿白、绿、橙白、蓝、蓝白、橙、棕白、棕
568B线序:橙白、橙、绿白、蓝、蓝白、绿、棕白、棕
平行线:又称为直通线 ,线序相同。不同层设备使用平行线。(568A-568A,568B-568B)
交叉线:线序不同。同层设备使用交叉线。(A-B,B-A)
ps:同层,eg电脑连电脑,原因避免数据对冲,但是路由器连电脑也为同层
全反线:又称为console线,配置线,线序相反,用于用户控制网络设备。(同种线颜色调转)
光纤
利用光携带光信号传输数据
分类:
单模:应用注入式激光二极管 ,光在光纤中横向(直线)传输
光源贵,线便宜
多模:应用发光二极管,光在光纤中全反射传输
光源便宜,线贵
光纤由于其抗干扰的特性(包括内部干扰和外部干扰)具有传输距离远,传输质量高的特点,被广泛使用。缺点是抗弯折性差,接口需要光电转换模块,成本较大
区分: 黄色代表单模,橙色代表千兆多模 ,蓝色万兆多模