




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
理解TCP/IP网络通信原理1、 OSI模型其中最下面两层:物理层与数据链路层可以不需要了解,他们主要是系统负责驱动的设备与网络硬件。一般我们常用的网络协议是TCP与UDP,但在TCP/UDP与数据链路层之间有一个网络层,我们可以直接绕过TCP与UDP,直接使用IPv4或者IPv6,我们称为原始套节字(RAW Socket)。上面三层统称应用层,主要有http,ftp,telnet等协议支持。2、 网络工具1、 Netstata) 提供接口信息netstat i说明:其中eth0是以太网接口。lo是本地回旋(loopback)接口b) 路由表netstat -rc) 坎坎坷2、 ifconfiga) 查找所有接口信息ifconfig -ab) 查找指定接口的详细信息ifconfig 接口名3、 pinga) 查找多个ip,争对广播IP使用ping指令ping 广播ip地址3、 常用协议关系(1) UDPUDP是简单的传输层协议,UDP的主要问题是数据缺乏可靠性。如果要确保数据到达目的地,应用程序必须建立一组特性来保障。每个数据报文都有一定长度,一般一个数据报就是一条记录。UDP是无连接的。TCP 是全双工的。(2) TCPTCP是有连接的。TCP提供数据可靠传输。TCP发送的数据是有序无界的。一般称之为流。TCP提供数据缓冲流量控制。TCP是全双工的,在发送数据的同时,也可以接收数据。(3) 协议头的关系4、 TCP的连接关闭过程1、 服务器准备好接收外来连接,称为被动打开(passive open)。该过程由socket,bind,listen等函数完成。2、 客户主动打开连接(active open)。该过程由connect函数完成。该过程中客户一般SYN分节同步,告诉服务器在将要的连接中发送的数据的初始序列号。SYN分节不携带数据,只有IP头部,TCP头部和可能的TCP选项。备注:常用TCP选项如下MSS选项:SYN的最大分节大小(maximum segment size)。接收窗口大小选项:最大数据接收空间大小。上面两个选项可以使用socketopt设置,分别对应TCP_MAXSEG和SO_RCVBUF。3、 服务器确认客户的SYN分节,同时也发送一个SYN分节给客户,也包含在将要连接中发送数据的初始序列号。同时服务器还发送一个对SYN的ACK。4、 客户确认服务器的SYN。上面过程需要交换三个分组,一般称为TCP的三路握手(three-way hand-shake)。其中J与K是数据的初始序列号。ACK确认的是下一个将要接收的数据的期望序列号。TCP的连接需要三个分节,TCP的关闭需要4个分节。TCP的状态图:5、 IP头布局结构体定义:struct ip #if _BYTE_ORDER = _LITTLE_ENDIAN unsigned int ip_hl:4;/header length unsigned int ip_v:4;/version#endif#if _BYTE_ORDER = _BIG_ENDIAN unsigned int ip_v:4;/version unsigned int ip_hl:4;/header length#endif u_int8_t ip_tos;/ type of service u_short ip_len;/ total length u_short ip_id;/ identification u_short ip_off;/ fragment offset field#defineIP_RF 0x8000/ reserved fragment flag#defineIP_DF 0x4000/ dont fragment flag#defineIP_MF 0x2000/ more fragments flag#defineIP_OFFMASK 0x1fff/ mask for fragmenting bits u_int8_t ip_ttl;/ time to live u_int8_t ip_p;/ protocol u_short ip_sum;/ checksum struct in_addr ip_src, ip_dst;/ source and dest address ;下面是每个字段的说明。字段字段说明unsigned int ip_v:4版本。常见版本:4IPv45Stream IP Datagram mode (experimental IP)6IPv67TP/IX (the next Internet Protocol)8The P Internet Protocol9TUBA其中IPv4的版本使用宏定义:#defineIPVERSION4 /* IP version number */unsigned int ip_hl:4IP头长度。单位是word,每个word是4字节。比如5word,就是20个字节。u_int8_t ip_tos服务类型。指数据包的管理方式。设置为0表示按正常方式管理。Tos有四种选项可以设置:Minimum Delay, Maximum Throughput, Maximum Reliability, and Minimum Cost。这四个选项可以使用setsockopt设置。u_short ip_lenu_short ip_id数据包ID。每个数据包唯一的ID。u_short ip_off数据包是否分节表示。#defineIP_RF 0x8000/* reserved fragment flag */#defineIP_DF 0x4000/* dont fragment flag */#defineIP_MF 0x2000/* more fragments flag */#defineIP_OFFMASK 0x1fff/* m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 邳州团队活动方案
- 郑州五金活动方案
- 药品协会活动方案
- 功夫教练考试题及答案
- 幼儿园教学教案设计:安全用彩泥
- 公共设施管理使用与维护协议
- 家庭和谐幸福公约承诺函(7篇)
- 飞机铆工考试题及答案
- 新型城镇化发展保障责任承诺书(9篇)
- 翻译职位考试题及答案
- 急诊专科护士进修汇报课件
- 高速公路项目竣工决算审计服务投标方案(技术方案)
- 科研项目管理
- 2024-2025学年辽宁省点石联考高三(上)段考数学试卷(10月份)(含答案)
- 基于机器视觉的智能工业物料分拣系统设计研究
- 《计算机制图-中望CAD 2023》中职全套教学课件
- 2024年“学宪法、讲宪法”应知应会题库
- DL∕T 5372-2017 水电水利工程金属结构与机电设备安装安全技术规程
- 平安产险建筑工程团体意外伤害保险条款
- 基于人工智能的药物不良反应预测与预警系统
- 指导青年教师赛课工作方案
评论
0/150
提交评论