linux环境编程-网络编程(李)

linux环境编程-网络编程(李)

ID:39970409

大小:720.00 KB

页数:66页

时间:2019-07-16

linux环境编程-网络编程(李)_第1页
linux环境编程-网络编程(李)_第2页
linux环境编程-网络编程(李)_第3页
linux环境编程-网络编程(李)_第4页
linux环境编程-网络编程(李)_第5页
资源描述:

《linux环境编程-网络编程(李)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux网络编程2009-12计算机网络计算机网络:把分布在不同地理位置上的,具有独立功能的多台计算机、终端及其附属设备,用通信设备和通信线路连接起来,再配以相应的网络软件,以实现计算机资源共享。LAN物理拓扑结构OSI参考模型应用层展示层会话层传输层网络层数据链路层物理层应用层展示层会话层传输层网络层数据链路层物理层Network字节序不同的处理器会使用不同的方式来解释多字节数字。32bit整数——0x01020304网络字节序就是指大端01020304小端/小尾大端/大尾04030201低地址高地址OSIvsTCP/IP应用层表示层会话层传输层网

2、络层数据链路层物理层应用层IPv4,IPv6网络介质层TCPUDPOSI模型TCP/IP模型通过路由器连接的两个网络FTP客户TCPIP以太网驱动程序FTP服务器TCPIP令牌环驱动程序令牌环以太网驱动程序令牌环驱动程序IPFTP协议TCP协议IP协议IP协议以太网客户服务器数据进入协议栈时的封装用户数据用户数据App头部用户数据TCP头部用户数据TCP头部IP头部用户数据TCP头部IP头部以太网头部以太网尾部以太网帧40~1500字节FTP客户TCPIP以太网驱动程序TCP段IP分组TCP/IP协议族概貌tcpdumpmroutedpingtrace

3、routeAppl.Appl.TCPUDPICMPIGMPIPv4BPFDLPI数据链路ARPRARPUDP:用户数据报协议UDP提供无连接服务UDP缺乏可靠性支持,应用程序必须实现:确认、超时、重传、流控等UDP面向记录服务UDP数据报格式源端口目的端口长度校验和数据01531structudphdr{u_int16_tsource;u_int16_tdest;u_int16_tlen;u_int16_tcheck;};TCP:传输控制协议TCP是面向连接的。TCP提供可靠性,实现了丢失重传。RTT的估算。TCP通过给所发送数据的每一个段管理一个序列

4、号进行排序。TCP提供流量控制和拥塞控制:通告窗口、拥塞窗口。TCP的连接是全双工的。TCP协议数据段格式HLEN窗口序列号确认号源端口目的端口保留码位校验和紧急指针选项填充字节数据URGACKPSHRSTSYNFIN015317首部数据区TCP连接的建立TCP连接的过程:服务器必须准备好接受外来的连接。通过调用socket,bind,listen函数完成。称为被动打开。客户通过调用connect进行主动打开。这引起客户TCP发送一个SYN分节,告诉服务器客户将在连接中发送的数据的初始序列号。服务器必须确认客户的SYN,同时自己也得发送一个SYN分节。

5、服务器以单个分节向客户发送SYN和对客户的SYN的ACK。客户必须确认服务器的SYN。TCP三次握手客户服务器SocketConnect(阻塞)(主动打开)Socket,bind,listen(被动打开)SYNJSYNK,ackJ+1ackK+1Accept返回Read阻塞Connect返回TCP连接终止TCP一般用四个分节终止一个连接:某个进程首先调用close,这一端的TCP于是发送一个FIN分节,表示数据发送完毕。主动关闭。另一端称为被动关闭。TCP对接收的FIN分节进行确认,并以文件结束标志传递给应用程序。一段时间后,接收到文件结束标志的应用程

6、序调用close,这也导致向对方发送一个FIN分节。接收到这个FIN分节的原发送方TCP对它进行确认。TCP连接关闭客户服务器Close主动关闭被动关闭Read返回0FINMackN+1CloseackM+1FINN网络中的几类地址物理地址:即MAC地址逻辑地址:即IP地址端口地址:区分同一台计算机上不同进程。域名地址:方便人类记忆,最终会转换成IP地址。物理地址48位:24位OUI,24位由厂商分配平面地址,无结构全球唯一局部范围寻址存在于数据链路层IP地址IP地址标识着网络一个主机的位置。每个IP地址都是由32位(或128位)组成,分成两部分:网络

7、号、主机号。全球唯一,寻址容易两种表示形式:二进制(计算机内部)、点分十进制(便于记忆)IP地址分类0NetID10110NetID1110MulticastAddressHostIDNetIDHostIDHostIDABCD8bits8bits8bits8bits0~127128~191192~223224~239端口地址processprocessprocessprocessprocessprocessIP地址平面A机B机端口地址(cont.)TCP和UDP使用16位的端口号(用无符号整型表示)为防止端口使用的混乱,将端口分为以下三类:知名端口:0

8、~1023,由IANA统一控制注册的端口:1024~49151,这些端口虽不由IANA控制,但

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。