2.3HTTP 协议
一个简单的请求-响应协议,它通常运行在 TCP 之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
2.4SNMP 协议
简单网络管理协议。专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及 HUBS 等)的一种标准协议,它是一种应用层协议。
2.5 SMTP 协议
一个相对简单的基于文本的协议。在其之上指定了一条消息的一个或多个接收者(在大多数情况下被确认是存在的),然后消息文本会被传输。
2.6 DNS 协议
DNS(Domain Name System,域名系统),万维网上作为域名和 IP 地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接知读取的 IP地址。
3 什么是传输协议
传输层提供了进程间的逻辑通信,传输层向高层用户屏蔽了下面网络层的核心细节,使应用程序看起来像是在两个传输层实体之间有一条端到端的逻辑通信信道。
3.1 TCP 协议
TCP:(Transmission Control Protocol)传输控制协议,TCP 是一种面向连接的、可靠的、基于字节流的传输层(Transport layer)通信协议。TCP 为提供可靠性传输,实行“顺序控制或“重发控制”机制。此外还具备“流控制(流量控制)”、“拥塞控制”、提高网络利用率等多功能。
3.2 UDP 协议
UDP:(User Datagram Protocol)的简称, 是不具有可靠性的数据报文协议。虽然可以确保发送消息的大小,却不能保证消息一定会到达。
3.3 TCP 与 UDP 比较
TCP 和 UDP 的优缺点无法简单地、绝对地去做比较:TCP 用于在传输层有必要实现可靠传输的情况;UDP 主要用于那些对高速传输和实时性有较高要求的通信或广播通信。TCP和 UDP 应该根据应用的目的按需使用。
4 什么是网际协议
网际协议是一个网络层协议,它包含寻址信息和控制信息 ,可使数据包在网络中路由。
4.1 IP 协议
IP 协议(Internet Protocol 网际互连协议),它主要是完成两个任务,一个是寻找地址,第二个是管理分割数据片。
4.2 ICMP 协议
ICMP 的主要功能包括,确认 IP 包是否成功送达目标地址,通知在发送过程当中 IP 包被废弃的具体原因,改善网络设置等。
IPv4 中 ICMP 仅作为一个辅助作用支持 IPv4。也就是说,在 IPv4 时期,即使没有ICMP,仍然可以实现 IP 通信。然而,在 IPv6 中,ICMP 的作用被扩大,如果没有 ICMPv6,6IPv6 就无法进行正常通信。
4.3 ARP 协议
ARP 协议(Address Resolution Protocol,地址解析协议)是一个位于 TCP/IP 协议群中的网络 层,负责将某个 IP 地址解析成对应的 MAC 地址。主机将包含目标 IP 地址信息的 ARP 请求广播到网络中的所有主机,并接收返回消息,以此确定目标 IP 地址的物理地址。
5 什么是路由控制协议
路由控制协议是一种网络层协议,它通过提供一种共享路由选择信息的机制,允许路由 器与其他路由器通信以更新和维护自己的路由表,并确定最佳的路由选择路径。通过路由选 择协议,路由器可以了解未直接连接的网络的状态,当网络发生变化时,路由表中的信息可 以随时更新,以保证网络上的路由选择路径处于可用状态。
5.1 RIP 协议
RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。
5.2 OSPF 协议
OSPF(open shortest path first,开发最短路径优先协议)路由协议是用于网际协议(IP)网络的链路状态路由协议。
5.3 BGP 协议
BGP(Border Gateway Protocol,边界网关协议)边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由协议。 目的是为了方便管理规模不断扩大的网络,网络被分成了不同自治系统。BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。
三、 TCP 协议传输特点
TCP 是一个可靠的传输协议,在创建连接时会经历三次握手,在断开连接时会经历四次挥手。
1 建立连接的三次握手
所谓三次握手是指建立一个 TCP 连接时需要客户端和服务器端总共发送三个包以确认连接的建立。
2 断开连接的四次挥手
四次挥手即终止 TCP 连接,就是指断开一个 TCP 连接时,需要客户端和服务端总共发送4 个包以确认连接的断开。
四、 服务端口
1 端口作用
端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。一台计算机上同时可以运行多个程序。传输层协议正是利用这些端口号识别本机中正在进行通信的应用程序,并准确地将数据传输。
2 端口分配
操作系统中一共提供了 0~65535 可用端口范围。
按端口号分类:
公认端口(Well Known Ports):从 0 到 1023,它们紧密绑定(binding)于一些服务。
通常这些端口的通讯明确表明了某种服务的协议。例如:80 端口实际上总是 HTTP 通讯。
注册端口(Registered Ports):从 1024 到 65535。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从 1024 左右开始。
3 常见的应用层协议与端口分配