网络编程教程(一)TCP/IP协议族概述

         TCP/IP协议族理论上是七层模型,在实际应用中是四层,下面介绍每一层的作用。 写博客 

1.数据链路层

         数据链路层实现了网卡接口的网络驱动程序,以处理数据在物理媒介(比如以太网、令牌环网)上的传输。不同的物理网络具有不同的电器特性,网络驱动程序隐藏了这些细节,为上层协议提供了一个统一的接口。
        数据链路层两个常用的协议是ARP协议和RARP协议。

2.网络层

         网络层的核心协议是IP协议,它的作用是实现数据包的选路和转发。IP协议根据数据包中的目的IP地址来决定如何投递它。如果数据包不能直接发送给目标主机,那么IP协议就为它寻找一个合适的下一跳路由器,并将数据包交付给该路由器来转发。多次重复这一过程,数据包最终达到目标主机,或者由于发送失败而被丢弃。

3.传输层

         传输层为两台主机上的应用程序提供端到端(这里的端是指端口)的通信。传输层协议有三个:TCP协议、UDP协议和SCTP协议,这里主要介绍TCP协议和UDP协议。
         TCP协议(Transmission Control Protocol,传输控制协议)为应用层提供面向连接的、可靠的和基于数据流的服务。面向连接,使用TCP通信的双方需要在传输数据前通过三次握手建立连接,并在内核中为该连接维持一些必要的数据结构,如连接的状态、读写缓冲区和多个定时器等;可靠的,TCP协议通过超时重传和确认机制来保证数据从发送端到达接收端;基于数据流,发送的数据没有边界(长度)限制,它源源不断从通信的一端流入另一端。
        UDP协议(User Datagram Protocol,用户数据报协议)为应用层提供无连接、不可靠的和基于数据报的服务。无连接,使用UDP协议通信的双方不保持一个长久的联系,因此应用程序每次发送数据都要明确指定接收端的地址;不可靠的,意味着UDP协议无法保证数据从发送端正确地传送到目的端,如果数据在中途丢失,不会重发;基于数据报,每个UDP数据报都有一个长度,接收端必须以该长度为最小单位将其所有内容一次性读出,否则数据将被截断。

4.应用层

         应用层负责处理应用程序的逻辑。
         应用层的协议很多,如ping、telnet、OSPF和DNS等。


5.常用协议及作用

协议作用
TCP提供端到端的可靠通信
UDP提供端到端的不可靠通信
IP数据包的路由和转发
ARP将IP地址转换为MAC地址
RARP将MAC地址转换为IP地址
DNS将域名解析成对应的IP地址
ICMP网络诊断与检测

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值