应用层协议
浏览器与服务端通信
http协议 传输数据格式:HTML
电子邮件通信
MIME协议
文件传输
FTP协议
远程登录
TELNET协议和SSH协议
网络管理
SNMP协议 MIB协议
数据链路层
包括了MAC寻址,介质共享,非公有网络,分组交换,环路检测,VLAN等。
MAC地址:
48bit,几乎不重复
参数含义:
MAC地址转发:
根据数据链路层中每个帧的目标MAC地址,决定从哪个网络接口发送数据
IP协议
IP基础知识
包括了IP寻址、路由、IP分包和组包
路由寻址:先寻找目标地址---再寻找路由地址
路由地址:A类/B类/C类/D类
IPV6使用一种全局的单播地址,它是互联网中唯一的一个地址,不需要正是分配IP地址。
DNS:将字符串转成具体的IP地址
ARP:借助ARP请求与ARP响应两种类型的包确定MAC地址 IP地址和MAC地址缺一不可
以太网发送IP包时,“下次要经由哪个路由器发送数据报”非常重要
RARP:则是从MAC地址定位到IP地址的一种协议
ICMP:目标不可达消息发送到IP地址
DHCP协议:为了实现自动设置IP地址和统一管理IP地址分配
DHCP协议可以实现自动设置IP地址 且保证唯一性
DHCP具有的功能
NAT协议:本地使用私有地址,连接互联网时转而使用全局IP地址
IP隧道:IPV6和IPV4通信
IP多播技术
IP任播为那些提供同一种服务的服务器配置同一个IP地址,并与最近的服务器进行通信的一种方法,适用于IPv4和IPv6
IntServ和DiffServ来对通信质量进行设置
TCP与UDP协议
传输层定义
IP首部有协议字段,标识传输协议的类型
TCP:面向连接的、可靠的流协议
UDP:不具有可靠性的数据报协议 不一定能保证消息一定到达
基于广播的协议也要依赖于UDP
tip:数据链路--MAC地址 网络层--IP地址
区别通信的方法:源IP地址、目标IP地址、协议号、源端口号、目标端口号 不同则说明是不同的通信
53端口用于DNS服务 80端口用于HTTP通信
UDP
应用场景:
TCP
实现数据传输时各种控制功能 可以进行丢包的重发控制
对次序乱掉的分包进行顺序控制
通过确认应答来提高可靠性(即三次握手的作用)
如果没收到确认应答 未必是没到达
通过序列号方式 保证可靠传输
序列号指的是按顺序发送数据的每一个字节都标上号码的编号
tip 通过序列号和确认应答号 来实现可靠传输
三次握手和四次挥手示意图 重点
通过窗口的方式 实现无需等待确认应答 就继续发下一条请求的需求
窗口大小为4个段
流控制
即通过TCP协议 实现接收端通知发送端实际能够接收数据的大小,于是发送端就不会发送超过这个限制的大小
TCP首部格式
包括了 源端口号 目标端口号 序列号 确认应答号 数据偏移 保留 4个字节 控制位8位 包括了CWR ECE URC ACK PSH RST SYN(建立连接)FIN(不发送数据 断开连接
具体定义参考《图解TCP/IP》
路由协议
静态路由与动态路由
路由器转发逻辑:路由器根据所收到的目标主机的IP地址与路由控制表的比较得出下一个应该接收的路由器。
静态路由:将事先设置好路由器和主机中并将路由信息固定的一种方法
动态路由:管理员必须设置好路由协议
主要的路由协议
OSPF协议
链路状态型路由协议
工作原理:
应用层协议概要
SSH
图解TCP/IP 255页
加密远程登录协议
端口转发机制
FTP
走的是 TCP 21号端口