windows网络通信实现技术-PPT课件.ppt_第1页
windows网络通信实现技术-PPT课件.ppt_第2页
windows网络通信实现技术-PPT课件.ppt_第3页
windows网络通信实现技术-PPT课件.ppt_第4页
windows网络通信实现技术-PPT课件.ppt_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

陈兵Email cb china 南京航空航天大学计算机网络研究室2008 网络通信实现技术 第一章概述 课程体系 计算机网络 通信基础 计算机 网络基础 TCP IP 协议分析 网络与信息 安全 网络软件 通信技术 软件实验 停等协议ARQ实现 网络模拟器NS SOCKET通信硬件实验 网络工程 路由器和交换机 网络硬件 通信技术 第一章概述 教学目的及要求掌握计算机网络通信编程技术熟悉Unix Linux环境的使用教材有关Socket编程技术有关Unix Linux使用手册先修课程计算机网络基础TCPIP原理评分标准上机作业 第一章概述 Review 通信方式 单播unicast组播multicast广播broadcast网络体系结构 分层服务 协议和接口ISO OSITCP IPTCPIP地址 MAC IP 域名分层 网络层 传输层 应用层协议 ARP RARPIPICMPTCPUDP 接口 SOCKET传输层之上的接口 第一章概述 主要内容 计算模式简介SOCKET编程技术基本实验 实验1 PING程序的实现 尾数0 1 2 9实验2 TRACERT程序的实现 尾数3 4 5实验3 SCANNER扫描程序实现 尾数6 7 8 高级实验实验4 基于IP组播的通信实现 实验5 ARQ模拟程序实现 实验6 IP欺骗程序的实现 实验7 Sniffer程序的实现 实验8 HTTP代理程序的实现 实验9 简单FTP程序的实现 DEMO 第一章概述 1工作模式变迁 主机 终端方式一切由主机做主文件服务器方式磁盘共享 模式减轻网络负载 查询商业逻辑放到Client 和 模式改进信息表示方式三层构架 将商业逻辑放到Server减轻安装维护工作 第一章概述 特点 一切由主机做主终端不能独立工作 使用主机的CPU MEM等终端之间不能直接通信普通终端不支持GUI 工作模式的变迁 主机终端 第一章概述 工作模式的变迁 文件服务器 特点 文件服务器用来进行大容量数据存储和共享各主机有自己的资源 同时可以访问服务器的共享资源网络流量较大 如从服务器查找一条记录主机之间可以直接通信 第一章概述 工作模式的变迁 C S模式 特点 将应用分成两部分服务端负责数据处理和查询客户端负责结果表示GUI减轻网络负载 查询商业逻辑在Client 瓶颈 第一章概述 工作模式的变迁 B S模式 特点 改进信息表示方式三层构架 将商业逻辑放到Server减轻安装维护工作 第一章概述 2SOCKET编程技术 什么是SOCKETSOCKET域 类型 协议SOCKET提供的服务及工作流程SOCKET常用函数 第一章概述 SOCKET简介 什么是SOCKETSOCKET类型工作流程常用函数 第一章概述 什么是SOCKET 是TCP IP传输层的接口是BSDUNIX提供的网络应用编程接口采用客户机 服务器的通信机制 使网络客户机方和服务器方通过Socket实现网络之间的连接和数据交换提供了一系列的系统调用 使用这些系统调用可以实现TCP UDP ICMP和IP等多种网络协议之间的通信FTP Telnet使用TCP协议SNMP使用UDP协议各种组播和广播使用何种协议 可以构造典型的Client Server模式应用 第一章概述 SOCKET应用 创建C S方式的服务Service如何决定一个服务 IPAddress PortPort分类Well knownport 0 1023 FTP 20 21telnet 23Pop3 110SMTP 25RegisteredportOracle 1521 1526Sybase 5000 第一章概述 SOCKET域 AF UNIXUnixdomainsocketsAF INETInternetIPProtocolAF IPXNovellIPXAF APPLETALKAppletalkDDPAF X25ReservedforX 25project 第一章概述 SOCKET类型 SOCK STREAMstream connection socketSOCK DGRAMdatagram conn less socketSOCK RAWrawsocket 第一章概述 protocol IPPROTO IPInternetProtocolIPPROTO ICMPInternetControlMessageProtocolIPPROTO IGMPInternetGroupManagementProtocolIPPROTO TCPTransmissionControlProtocolIPPROTO UDPUserDataGramProtocol 第一章概述 Service 面向连接无连接 第一章概述 无连接工作流程 第一章概述 面向连接的工作流程 第一章概述 SOCKET基本函数 创建SOCKET C S 绑定SOCKET C S 连接 C 设置请求队列 S 从队列取一个请求 S 发送数据 C S 接收数据 C S 关闭SOCKET C S 第一章概述 SOCKET基本函数 1 名称 SOCKET功能 创建一个SOCKET标识格式 socket intfamily inttype intprotocol 入口 family可以选AF UNIX UNIX互连网协议 AF INET Internet协议 常用 AF NS XeroxNS协议 type可选 sock STREAM 流管套sock DGRAM 数据报管套sock RAW 原始管套protocol 一般为0出口 0socket标识符 第一章概述 举例 STEP1 通过vi创建一个test c文件 include includemain intsdsd socket AF INET SOCK STREAM 0 printf sd s n sd STEP2 通过cc编译并生成可执行文件cc otesttest cSTEP3 执行test文件 查看运行结果 第一章概述 SOCKET基本函数 2 名称 BIND功能 为一个没有名字的套接字指定一个名字格式 bind intsockfd structsockaddr myaddr intaddrlen 入口 sockfd 已经创建的socket标识符 myaddr 服务方地址 指明服务方的地址和服务端口号addrlen 地址长度出口 0成功 include 第一章概述 通用socket地址结构定义 structsockaddr u charsa len 地址总长度 u charsa family AF INET TCP IP地址 charsa data 14 address 第一章概述 TCP IP的socket地址结构定义 structsockaddr in u charsin len 地址总长度 u charsin family u shortsin port 协议端口号 structin addrsin addr IPaddr charsin zero 8 un used structin addr u longs addr 第一章概述 SOCKET基本函数 3 名称 CONNECT功能 与服务器建立连接格式 connect intsockfd structsockaddr servaddr intaddrlen 入口 sockfd 已经绑定的socket标识符 servaddr 服务方地址 指明服务方的地址和服务端口号addrlen 地址长度出口 0成功 include备注 仅适用于Client 第一章概述 SOCKET基本函数 4 名称 LISTEN功能 服务器设置请求队列数格式 listen sockfd max numb 入口 sockfd 已经绑定的socket标识符 max numb 能同时处理的请求数出口 0成功 include备注 仅适用于Server 第一章概述 SOCKET基本函数 5 名称 ACCEPT功能 服务器从队列中取出一个请求进行处理格式 new sd accept sockfd 入口 sockfd socket标识符 出口 0新的socket标识符 include备注 仅适用于Server 以后客户方与服务方的通信均使用新的socket标识符 原标识符继续监听客户的请求 第一章概述 SOCKET基本函数 6 名称 SEND RECV功能 进行数据的发送和接收格式 send intsockfd char buff intnbytes intflag recv intsockfd char buff intnbytes intflags 入口 sockfd socket标识符 buff 发送的内容或者接收缓冲区nbytes 发送或者接收缓冲区的长度flag 数据类型 缺省为0MSG OOB 发送或接收加急数据 MSG PEEK 观察输入报文 MSG DONTROUTE 旁路路由选择 出口 0实际发送或接收的字符数 第一章概述 SOCKET基本函数 7 名称 CLOSE功能 关闭Socket格式 close sockfd 入口 sockfd 欲关闭的socket标识符 出口 0成功 include 第一章概述 基本函数综合举例 服务方 1 创建socket2 绑定3 设置监听队列4 监听5 接收一包数据 并显示6 关闭socket 第一章概述 基本函数综合举例 客户方 1 创建socket2 绑定3 与服务方连接4 发送一串信息 Hello World 5 关闭socket 第一章概述 例 client端 include include include include include include include definePROTOPORT5193 defaultprotocolportnumber externinterrno charlocalhost localhost defaulthostname 第一章概述 main argc argv intargc char argv structhostent ptrh pointertoahosttableentry structprotoent ptrp pointertoaprotocoltableentry structsockaddr insad structuretoholdanIPaddress intsd socketdescriptor intport protocolportnumber char host pointertohostname intn numberofcharactersread charbuf 1000 bufferfordatafromtheserver 第一章概述 memset char 第一章概述 Connectthesockettothespecifiedserver if connect sd structsockaddr Terminatetheclientprogramgracefully 第一章概述 例 server端 include include include include include include include definePROTOPORT5193 defaultprotocolportnumber defineQLEN6 队列长 intvisits 0 客户连接数 第一章概述 main argc argv intargc char argv structhostent ptrh pointertoahosttableentry structprotoent ptrp pointertoaprotocoltableentry structsockaddr insad structuretoholdserver saddress structsockaddr incad structuretoholdclient saddress intsd sd2 socketdescriptors intport protocolportnumber intalen lengthofaddress charbuf 1000 bufferforstringtheserversends Strcpy buf hello world 第一章概述 memset char 第一章概述 if listen sd QLEN 0 Specifysizeofrequestqueue fprintf stderr listenfailed n exit 1 while 1 Mainserverloop acceptandhandlerequests alen sizeof cad if sd2 accept sd structsockaddr 第一章概述 实验 PING程序的实现 实验目的 理解ping程序的概念 熟练使用linux编程中的原始套接字实验环境 linux C语言实验内容 设计一个简单的PING程序 每隔1秒钟使用ICMP报文向目的IP地址发一个ICMP请求 长度由length指定 对方将返回一个ICMP应答 应答数据包通过循环调用函数recvfrom来接收 发送ICMP报文的次数由counts指定SpingdstIP llength ncounts 第一章概述 实验 TRACERT程序的实现 实验目的 理解tracert程序的概念 熟练使用linux编程中的原始套接字实验环境 linux C语言实验内容 设计一个简单的tracert程序 第一章概述 实验 SCANNER简单网络扫描程序实现 实验目的 熟悉并实现网络扫描的基本原理 了解网络扫描的几种常用的方法 实验环境 linux C语言实验内容 用C语言编写一个在linux下扫描局域网内主机的程序 要求可以显示局域网内的主机名列表 IP地址列表 并可以显示哪些主机开放了哪些端口 第一章概述 实验 基于IP组播的通信实现 实验目的 理解单播 广播 组播的基本原理 实验环境 linux环境C语言实验内容 由一个进程向一个组播组发送报文 组播组中的相关进程接收报文 并将报文显示到屏幕上 要求服务器为客户加入组时为这个客户端创建一个进程 退出时撤销该进程 注意这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论