应用层 网络进程访问
表示层 数据表示
会话层 主机间通信
传输层 端到端连接
网络层 数据传输
数据链路层 访问介质
物理层 物理线缆二进制
封包与解封
从下至上封包加包头通过上层协议传给对方机器,对方机器接受后需要从上至下拆解包头,这个过程叫解封
三种通讯模式
单播
广播
组播
局域网:
由服务器-》交换机-》pc
以交换机组成局域网
冲突检测的载波监听多路访问
也叫CSMA/CD
TCP/IP 协议栈
应用层
传输层
internet层
网络访问层
UDP VS TCP
UDP是没有安全加密和检测直接裸传输的方式,特点是效率高速度快
TCP是安全加密的传输方式,相较UDP安全性更好,但是牺牲了速度和效率
TCP三次握手
建立连接:1请求 2响应 3 确认
TCP四次挥手
断开链接:1.A断开请求发送B
2.B确认响应
3.B断开请求发送A
4.A确认响应
有限状态机FSM:Finite State Machine
CLOSED 没有任何连接状态
LISTEN 侦听状态,等待来自远方TCP端口的连接请求
SYN-SENT 发送连接请求后,等待对方确认
SYN-RECEIVED 在收到和发送一个连接请求后,等待对方确认
ESTABLISHED代表传输连接建立,双方进入数据传送状态
FIN-WAIT-1主动关闭,主机已发送关闭连接请求,等待对方确认
FIN-WAIT-2主动关闭,主机已收到对方关闭传输连接确认,等待 对方发送关闭传输连接请求
TIME-WAIT 完成双向传输连接关闭,等待所有分组消失
CLOSE-WAIT被动关闭,收到对方发来的关闭连接请求,并已确认
LAST-ACK 被动关闭,等待最后一个关闭传输连接确认,并等待所 有分组消失
CLOSING 双方同时尝试关闭传输连接,等待对方确认
TCP超时重传
异常网络状况下开始出现超时或丢包,TCP控制数据传输 以保证其承诺的可靠服务
TCP服务必须能够重传超时时间内未收到确认的TCP报文段。 为此,TCP模块为每个TCP报文段都维护一个重传定时器,该 定时器在TCP报文段第一次被发送时启动。如果超时时间内未 收到接收方的应答,TCP模块将重传TCP报文段并重置定时器 。至于下次重传的超时时间如何选择,以及最多执行多少次 重传,就是TCP的重传策略
与TCP超时重传相关的两个内核参数:
/proc/sys/net/ipv4/tcp_retries1,指定在底层IP接管之前
TCP最少执行的重传次数,默认值是3
/proc/sys/net/ipv4/tcp_retries2,指定连接放弃前TCP最 多可以执行的重传次数,默认值是15
TCP协议
传输层通过port号,确定应用层协议
Port number:
tcp:传输控制协议,面向连接的协议;通信前需要建立虚拟链路;结束后 拆除链路
udp:User Datagram Protocol,无连接的协议
IANA:互联网数字分配机构(负责域名,数字资源,协议分配)
0-1023:系统端口或特权端口(仅管理员可用) ,众所周知,永久的 分配给固定的系统应用使用,22/tcp(ssh), 80/tcp(http), 443/tcp(https)
1024-49151:用户端口或注册端口,但要求并不严格,分配给程序 注册为某应用使用,1433/tcp(SqlServer) ,1521/tcp(oracle),
3306/tcp(mysql),11211/tcp/udp (memcached) 49152-65535:动态端口或私有端口,客户端程序随机使用的端口 其范围的定义:/proc/sys/net/ipv4/ip_local_port_range
ARP 正向地址解析
通过IP寻找Mac地址
RARP 反向地址解析
通过MAC地址查询IP
网络配置方式
ifcfg:ifconfig,route,netstat
ip:object{link,addr}
原创文章,作者:晓楠,如若转载,请注明出处:http://www.178linux.com/74656