网络基础
网络概念
网络特性:速度,成本,安全性,可用性,可扩展性,可靠性,拓扑
宽带
常见拓扑结构
星型
总线型
环型
扩展星型
通讯模式
单播unicast
广播broadcast
组播multicast
数据传输方式
单工
半双工
全双工
网络按范围可分为
局域网(LAN)
广域网(WAN)
城域网(MAN)
网络线缆
双绞线:4对,8根;最大传输距离100m
屏蔽双绞线STP
非屏蔽双绞线UTP
双绞线线序
T568A:绿白,绿,橙白,蓝,蓝白,橙,棕白,棕
T568B:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕
直通线:T568A--T568A 两端线序相同
交叉线:T568A--T568B 两端线序不同
同轴电缆
粗缆:最大传185m
细缆:最大传500m
OSI参考模型
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
物理层:二进制传输
数据链路层:访问介质
Eternet协议
Eternet frame结构
MAC地址(物理地址)
每一个硬件设备的唯一标识;48位二进制组成;12位十六进制表示
前24位:OUI厂商编号
后24位:序列号
网络层:数据传输
传输层:端到端连接
会话层:主机间通信
表示层:数据表示
应用层:网络进程访问
网络设备
网卡NIC 二层设备
集线器Hub
一层设备
多端口中继器,放大信号
工作原理:半双工传输数据;共享带宽,广播发送数据;无安全性
网桥Bridge
交换机Switch
路由器Router
TCP/IP协议栈
应用层
传输层
网络层
网络接口层
TCP/IP与OSI模型对应关系
应用层 应用层
表示层
会话层
传输层 传输层
网络层 网络层
网络接口层 数据链路层
物理层
各层的协议详解
应用层
传输层
TCP Transmission Control Protocol 传输控制协议
TCP包头
端口:应用程序的唯一标识
端口在包头中占16位,所以可推算出有2^16=65536个端口
0-1023 系统端口(特权端口);仅管理员使用,分配给固定系统应用使用
1024-49151 用户端口(注册端口);分配给程序注册为某应用使用,如自己开发的程序
49152-65535 动态端口(私有端口,随机端口);客户端程序随机使用端口
其范围定义
/proc/sys/net/ipv4/ip_local_port_range
查看端口号
cat /etc/services
TCP三次握手
客户端主动向服务器发起请求
C:SYN=1,seq=x --> S
S:SYN=1,ACK=1,seq=y,ack=x+1 --> C
C:ACK=1,seq=x+1,ack=y+1 --> S
TCP四次断开
客户端和服务器都有可能主动发起请求
C:FIN=1,seq=u --> S
S:ACK=1,seq=v,ack=u+1 --> C
S:FIN=1,ACK=1,seq=w,ack=u+1 --> C
C:ACK=1,seq=u+1,ack=w+1 --> S
有限状态机
CLOSED 没有任何连接状态
LISTEN 侦听状态,等待来自远方TCP端口连接请求
SYN-SENT 发送连接请求后,等待对方确认
SYN-RECEIVED 在收到和发送一个连接请求后,等待对方确认
ESTABLISHED 传输连接建立,双方进入数据传送状态
FIN-WAIT-1 主动关闭,主机已发送关闭连接请求,等待对方确认
FIN-WAIT-2 主动关闭,主机已收到对方关闭传输连接确认,等待对方发送关闭传输连接请求
TIME-WAIT 完成双向传输连接关闭,等待所有分组消失
CLOSE-WAIT 被动关闭,收到对方发来的关闭连接请求,并已确认
LAST-ACK 被动关闭,等待最后一个关闭传输连接确认,并等待所有分组消失
CLOSING 双方同时尝试关闭传输连接
TCP特性:是由它的报文结构决定的
工作在传输层;面向连接协议;全双工通信;半关闭;错误检查;
将数据打包成段并排序;确认机制;数据恢复,重传;流量控制,滑动窗口;拥塞控制,慢启动和拥塞避免算法
UDP
UDP包头
UDP特性
工作在传输层;提供不可靠的网络访问;非面向连接协议;有限的错误检查;传输性能高;无数据恢复特性
网络层
IP Internet Protocol 互联网协议
IP PDU包头
ICMP Internet Control Message Protocol 控制报文协议
ping 命令 用来判断网络状态
ARP Address Resolution Protocol 地址解析协议
在TCP三次握手之前;广播请求,单播回应
将 IP-->MAC 把请求到的地址放入ARP缓存表中
RARP 反向地址解析
MAC-->IP 应用于无盘工作站
网络接口层
主机到主机的包传递
同一网络
不同网络
IP地址
IP地址:用来唯一标识网络中的每台设备
IP地址组成
网络ID:标识网络,每个网段分配一个网络ID
主机ID:标识单个主机,由组织分配给各设备
IP地址版本:IPv4,IPv6,IPv9
IPv4:32位二进制数;点分十进制法来记录
子网掩码:32位二进制;点分十进制记录法;用1来标识网络ID位数,用0来标识主机ID位数
有类
IP地址分类
A类 1-126
0NNNNNNN.HHHHHHHH.HHHHHHHH.HHHHHHHH
网络ID:8位;主机ID:24位
默认子网掩码 255.0.0.0
网络数:2^7
每个网络中主机数:2^24-2
B类 128-191
10NNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH
网络ID:16位;主机ID:16位
默认子网掩码:255.255.0.0
网络数:2^14
每个网络中主机数:2^16-2
C类 192-223
110NNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
网络ID:24位;主机ID:8位
默认子网掩码:255.255.0.0
网络数:2^21
每个网络中主机数:2^8-2
D类 224-239 组播地址
E类 250-255 保留地址
无类
CIDR 无类域间路由;网络ID和主机ID不确定
CIDR表示法:IP / 网络ID位数
关于IP地址的计算公式
1、网络数=2^可变网络ID位数
2、一个网络中的主机数=2^主机ID位数-2=2^(32-网络ID数)-2
3、网络ID=IP地址与子网掩码对位相与
4、划分子网数=划分成2^N个子网
VLSM:可变长子网掩码;(借位)解决IP地址匮乏
划分子网 将一个大网络划分成多个小网络
大网络:主机多=主机ID位数多,网络ID位数少
小网络:主机少=主机ID位数少,网络ID位数多
网络ID向主机ID借位N位,划分成2^N个子网
合并超网 将多个小网络合并成一个大网络
主机ID向网络ID借位
公有IP地址
私有IP地址
特殊IP地址
保留地址