TCP/IP可以分为四层或者五层
应用层、传输层、网络层、网络接口层
或者
应用层、传输层、网络层、数据链路层、物理层
与OSI相比
相同点:都有层次结构
不同点:TCP/IP的应用层包含了OSI的应用层、表示层、会话层。
跃层封装:TCP封装的次数不定,OSI固定为3次
ARP:地址解析协议,将IP地址映射为对应的MAC地址,经过2次封装(以太、IP)。
BPDU:网桥协议数据单元,交换机发的,用来维护生成树协议,经过1次封装(以太)。
协议分类:
单信道与双信道协议,知名协议与非知名协议,私有协议与公有协议。
本地网管:PC通过介质控制网络设备,也是Login。
应用层协议:
HTTP:浏览网页,基于TCP端口号80,明文形式发送。
HTTPS:安全的HTTP,安全的浏览网页,基于TCP端口号443。
FTP:文件传输协议,高速上传、下载大批量文件,基于TCP端口号20/21。双信道协议,20为控制端口号,21为数据端口号。通常通过20端口发送信令流量打通一个虚拟的逻辑连接,再利用21号端口传输数据。
DNS:域名解析服务,将域名转换为IP地址。基于UDP端口号53。
(1)浏览器输入网址
(2)向DNS服务器发送请求
(3)返回对应的IP地址
POP3:邮局协议第三版本,收邮件。基于UDP端口号110
SMTP:简单邮件传输协议,发邮件。基于TCP端口号25
Exchange:企业级邮箱服务,收发邮件。公有协议(标准化组织定义),私有协议(由某些厂商定义,只能由这些厂商的设备使用),微软专有。
DHCP:动态主机配置协议,让PC与服务器以及网络设备自动接收IP地址、子网掩码、网关地址。基于UDP端口号68.
TFTP:简单文件传输协议,用来传输小批量数据,通常用于管理网络设备的IOS操作系统以及配置文件。基于UDP端口号69.
Telnet:终端仿真协议,PC通过互联网远程管理网络设备,通过TCP端口号23。不安全,不加密。
SSH:安全外壳,功能类似Telnet,基于RSA(非对称加密)加密,更加安全。基于TCP端口号22。
安全:加密、认证、完整性检查。
对称加密:客户端和服务端使用的密钥相同。
非对称加密:客户端和服务端使用的密钥不同,公钥和私钥。公钥加密,私钥解密。把公钥交给发送方,私钥本地保留(接收方)。延迟相对对称加密,延迟较高。
SNMP:简单网络管理协议,同时管理整网所有网络设备。公有协议,但端口不定。
三种报文:
(1)GET:服务端发送,客户端返回各自的状态(MIB)。
(2)SET:服务端发送,远程配置
(3)TRAP:客户端通过TRAP报文实时汇报各自的状态。
NTP:网络时间协议,NTP服务器提供实时同步时间。软件时钟(重启变成出厂时间)与硬件时钟(有电池供电)。基于UDP端口号123.
传输层:
TCP:
(1)窗口机制:用来防止拥塞。限制发送端一次能发送的字节数,等待接收方回复ACK
a) 滑动窗口,每次发送时窗口大小都需要重新协商,网络状况好时,窗口变大;网络状况不好,窗口变小。
b) TCP Slow Start,TCP慢启动,迅雷先从1KBps慢慢增大,到一定上限后,瞬间下降,慢慢趋于稳定。第一次窗口大小为2的0次方,第二次窗口大小为2的1次方,第N次窗口大小为2的n-1次方,达到上限后,变为原来的一半。
(2)序列号:防止传输乱序。有一个文件很大,需要分5段传输。按照顺序从头到尾发送,但是由于延迟的存在,不同分段在传输的过程会经历不同的延迟,导致到达对端的顺序发生改变。
a) 延迟:传输延迟、排队延迟(不固定)、转发延迟、串行化延迟。
b) 延迟抖动:发送的一组连续的报文,到达目的端后顺序发生变化。
(3)确认号:TCP确认机制,防丢包。每发送一个报文,接收方都需要回复一个ACK报文。接收方回复的ACK等于发送方下次要发报文的SEQ
(4)Checksum:完整性检查,给数据添加传输层包头后,对整个报文进行MD5运算得到2个字节的散列值,作为校验和。当接收方收到后,在拆到传输层的时候,再对报文进行MD5运算,如果与校验和字段一致,则为合法报文,否则为非法报文,丢弃。
(5)重传:在发送某一个数据以后就开启一个计时器,在一定时间内如果没有得到发送的数据报的ACK,那么就重新发送数据,直到发送成功为止。
UDP:
a)相比TCP更安全,没有DOS攻击。
b)而且由于没有三次握手,延迟更低。对于语音、视频这类对延迟要求较高的应用程序,不适合用TCP。
c)UDP包头长度比TCP包头小。用UDP报头固定为8字节,TCP报头至少为20-60字节,对于载荷比较小的应用程序,用UDP可以节省带宽。
d)对于语音、视频对实时性要求较高,不需要超时重传,不然会有重传等待影响体验。所以用UDP更为合适。
ICMP:因特网控制报文协议,包含一系列配合IPV4使用的网路工具,常用的是ping。用来确定三层与三层的连通性。由两个报文组成,Echo request,Echo reply。
报文格式二层包头、IP包头、ICMP包头、FCS。
RTP:实时传输协议,配合UDP协议,用于语音和视频。UDP没有序列号,怕乱序。RTP为语音和视频提供序列号。
因特网层:提供3层逻辑地址的协议,称为被路由协议。
IPV4:IP地址32位,点分十进制表示。2的32次方最多有4亿3千万的地址。不够用。
前16位为网络号,后16位为主机位。为了避免浪费,提出了子网。
RFC定义了1918原则,分为公有地址和私有地址。私有地址如10.X.X.X,172.16.X.X,
192.168.X.X。
通过NAT、PAT一个园区网只需要一个IP地址。
IPV6:IP地址128位,地址个数是IPV4的2的96倍。分8段,每段4个十六进制。
XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
IPX:帝国时代的局域网路由。IPX/SPX协议栈。没有私有地址,不能网络化。
下面是3个公司开发的路由协议。
AppleTalk:
Novell:
DEC:
网络接口层:
LAN:
以太:
令牌环:
FDDI:光纤、园区网连接到城域网
WAN:串行线,Serial
HDLC:高级数据链路控制协议
PPP:点到点协议 AAA 认证、授权、审计
Frame Relay:帧中继协议,VPN让相隔甚远的外网接口,逻辑上的直连。带宽1.544M
ATM:异步传输模式,星形拓扑。Qos服务质量,优先级高的流量优先传递。