OSI模型
开放式系统互联通信参考模型(Open System Interconnection Reference Model)将计算机网络体系结构划分为以下七层:
第7层 应用层(Application Layer) 主条目:应用层 提供为应用软件而设的界面,以设置与另一应用软件之间的通信。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。
第6层 表达层(Presentation Layer) 主条目:表示层 把数据转换为能与接收者的系统格式兼容并适合传输的格式。
第5层 会话层(Session Layer) 主条目:会话层 负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。
第4层 传输层(Transport Layer) 主条目:传输层 把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。例如:传输控制协议义(TCP)等。
第3层 网络层(Network Layer) 主条目:网络层 决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成分组。网络表头包含了网络数据。例如:互联网协议(IP)等。
第2层 数据链接层(Data Link Layer) 主条目:数据链路层 负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成了帧。数据链表头(DLH)是包含了物理地址和错误侦测及改错的方法。数据链表尾(DLT)是一串指示数据包末端的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务(GPRS)等。 分为两种子层:logic link control sublayer & media access control sublayer
第1层 物理层(Physical Layer) 主条目:物理层 在局部局域网上传送帧,它负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机适配器等
层级 | 层级名称 | 对应协议 |
---|---|---|
7 | 应用层 application layer | HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP |
6 | 表示层 presentation layer | XDR、ASN.1、SMB、AFP、NCP |
5 | 会话层 session layer | ASAP、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、IGMP、Winsock、BSD sockets |
4 | 传输层 transport layer | TCP、UDP、TLS、RTP、SCTP、SPX、ATP、IL |
3 | 网络层 network layer | IP、ICMP、IPX、BGP、OSPF、RIP、IGRP、EIGRP、ARP、RARP、X.25 |
2 | 数据链路层 data link layer | 以太网、令牌环、HDLC、帧中继、ISDN、ATM、IEEE 802.11、FDDI、PPP |
1 | 物理层 physical layer | 线路、无线电、光纤 |
通常人们认为 OSI 模型的最上面三层(应用层、表示层和会话层)在 TCP/IP 组中是一个应用层。由于 TCP/IP 有一个相对较弱的会话层,由 TCP 和 RTP下的打开和关闭连接组成,并且在 TCP 和 UDP 下的各种应用提供不同的端口号,这些功能能够被单个的应用程序(或者那些应用程序所使用的库)增加。与此相似的是,IP 是按照将它下面的网络当作一个黑盒子的思想设计的,这样在讨论 TCP/IP 的时候就可以把它当作一个独立的层。
TCP/IP模型
层级 | 层级名称 | 对应协议 |
---|---|---|
4 | 应用层 application layer | HTTP、FTP、DNS(如BGP和RIP这样的路由协议,尽管由于各种各样的原因它们分别运行在TCP和UDP上,仍然可以将它们看作网络层的一部分) |
3 | 传输层 transport layer | TCP、UDP、RTP、SCTP(如OSPF这样的路由协议,尽管运行在IP上也可以看作是网络层的一部分) |
2 | 网络互连层 internet layer | 对于TCP/IP来说这是因特网协议(IP)(如ICMP和IGMP这样的必须协议尽管运行在IP上,也仍然可以看作是网络互连层的一部分;ARP不运行在IP上) |
1 | 网络接口层 link layer | 以太网、Wi-Fi、MPLS等。 |
Ping
PING (Packet Internet Groper) 对于确定网络和各种外部主机的状态、跟踪和隔离硬件和软件问题,以及测试、测量和管理网络非常有用。
Ping 发送一个 ICMP (Internet Control Messages Protocol) ECHO_REQUEST 去从主机或网关那里获得 ICMP ECHO_RESPONSE 信号,所以 Ping 利用的原理基本上就是:我叫你一声,你敢答应吗
Ping 利用网络上机器IP地址的唯一性,给目标 IP 地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少,它是用来检查网络是否通畅的基本命令。
语法规则 ping [ -d] [ -D ] [ -n ] [ -q ] [ -r] [ -v] [ -R ] [ -a addr_family ] [ -c Count ] [ -w timeout ] [ -f | -i Wait ] [ -l Preload ] [ -p Pattern ] [ -s PacketSize ] [ -S hostname/IP addr ] [ -L ] [ - I a.b.c.d. ] [ -o interface ] [ -T ttl ] Host [ PacketSize ] [ Count ]
- -c Count : 限制请求的数目
- -w timeout : 等待应答的超时时间