常见网络设备:交换机 路由器 中继器 多协议网关(路由器的前身)
交换机:用于连接统一网络的设备,实现内网设备通信。
从广义上分为:局域网交换机,广域网交换机
从网络构成分为:接入层交换机,汇聚层交换机,核心层交换机
从传输速率分为:以太网交换机,快速以太网交换机(百兆),千兆以太网交换机
路由器:用于连接不同的网络,隔离广播域,实现跨网络通信。
网关:网络的出口,一般网关地址为该网段下的1或254,VMWare虚拟机NAT模式下网关为2
DNS:域名服务器(保存域名和IP地址之间的对应关系)
端口号:0-65535 (在传输层中) 实际可用1-65534
HTTP 80 HTTPS 443 DNS 53 Telnet 23
ftp 21、20 ssh 22 mysql 3306 php 9000
tomcat 8080(8005/8009)
zabbix 10050 10051 redis 6379 用来区分不同的应用程序。
常见传输媒介:双绞线(RJ45) 光纤
七层模型(OSI)
由国际标准化组织(ISO)制定的七层模型(OSI)
应用层:针对于应用约定的标准
HTTP:超文本传输协议
Telnet:远程协议
OICQ:qq的协议
HTTPS:安全超文本传输协议
SMTP\POP3:简单邮件传输协议(发)\邮局协议(收)
表示层:约束数据格式,负责格式转化,加密以及解密
会话层:建立、维护、解除会话,数据的传输通道
传输层:约定数据采用何种方式进行传递
TCP:传输控制协议,实现数据的可靠传输
UDP:用户数据报协议,实现数据的快速传输,不可靠
网络层:提供逻辑地址(IP地址,用于在网络中唯一的标识一台设备,作用于网络与网络间的通信,提供路由和选路)
数据链路层:提供MAC(物理)地址,用于在一条链路上唯一的标识一台设备,作用于网络内的通信。
MAC(物理地址):烧写在网卡,全球唯一。MAC地址的有效范围仅限于本网络。
物理层:约定接口类型,传输速度,线缆针脚等。
路由器:为于OSI的第三层(网络层)
交换机:为于OSI的第二层(数据链路层)
TCP/IP模型
TCP/IPV4 4层模型
应用层(应用层+表示层+会话层)
传输层
网络层
网络接口层(物理层+数据链路层)
TCP/IPV4 5层模型
应用层(应用层+表示层+会话层)
传输层
网络层
数据链路层
物理层
数据封装/解封装过程
应用层产生一个数据,向外发送一个请求百度的指令DATA
→传输层:TCP+DATA→形成数据段
→网络层:IP+TCP+DATA(IP地址包含源ip地址和目的ip地址)→形成数据包
→数据链路层:帧头+IP+TCP+DATA+帧尾(帧头里有源MAC和目的MAC{通过ARP获取})→形成数据帧
→物理层:将数据帧转化为比特流(一串二进制数),从网卡接口发出
解封装的过程相反
ARP请求与响应
ARP请求与响应的目的是为了获取需要通信目标的MAC地址
ARP工作原理:
请求方以广播报文的方式发送一个ARP request(who has 响应方IP?Tell 请求方IP)
响应方收到ARP request后,以单播报文的形式将自己的MAC地址封装进ARP relay中,发送给请求方(响应方IP is at 响应方MAC地址)
传输协议
传输控制协议TCP (Transmission Control Protocol):一种面向连接的协议,提供可靠的传输服务,通过重传机制,实现数据的可靠传输。
用户数据报协议 UDP (User Datagram protocol):一种非面向连接的协议,提供不可靠的传输服务。
TCP的传输过程
Seq序列号:保障传输过程可靠。(缺点:发送速度,占据额外的带宽)
ACK:(确认消息)表示Acknowledgment Number字段有意义
SYN:(在建立TCP连接的时候使用)表示SYN报文
FIN:(在关闭TCP连接的时候使用)表示没有数据需要发送了
TCP建立连接的过程
在发送数据前,在源和目的间事先建立连接,也称为3次握手
A发送同步消息询问B
B收到后发送ACK的确认消息,并且也询问A发送同步消息
A收到后发送ACK确认消息回复给B
TCP关闭连接的过程
4次挥手
主机A向服务器发送一个FIN请求断开连接
服务器回复ACK
服务器向主机A发送一个FIN请求断开连接
主机A收到后回复ACK确认断开
UDP协议简介
UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当UDP它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上,接收端需要时直接在网络上接受。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。
由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
UDP协议通常用于直播和视频传输领域
ICMP协议
ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
主要功能:
侦测远端主机是否存在
建立及维护路由资料
重导资料传送路径