




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目11 基于WindowsCE5 0的嵌入式Web服务器 1 本节课程主要知识点套接字Socket基于TCP IP的应用程序 重点和难点 重点套接字Socket基于TCP IP的应用程序难点Socket编程 套接字Socket 套接字Socket 套接字 Socket 最初是由加利福尼亚大学Berkeley分校为UNIX操作系统开发的网络通信接口 随着UNIX操作系统广泛使用 套接字成为当前最流行的网络通信应用程序接口之一 WindowsSocketsAPI是微软Windows的网络程序设计接口 它在继承了BerkeleySockets主要特征的基础上 又对它进行了重要扩充 Socket与电话 电话系统与面向连接的Socket非常相似 通电话的两个人相当于相互通信的两个进程 通话双方所在的地区相当于一个网络 区号是它的网络地址 区内一个单位的交换机相当于一台主机 主机分配给每个用户的局内号码相当于Socket号 Socket与电话连接的过程 对方都在现场并空闲 相当于通信的另一主机开机接受连接请求 拿起电话话筒 双方就可以正式通话 相当于连接成功 双方通话的过程 是向电话机发出信号和从电话机接收信号的过程 相当于向Socket发送数据和从Socket接收数据 通话结束后 一方挂起电话机 相当于关闭Socket 撤消连接 Socket面临的问题 网间进程通信要解决的是不同主机进程间的相互通信问题 为此 首先要解决的是网间进程标识问题 同一主机上 不同进程可用进程号唯一标识 但在网络环境下 各主机独立分配的进程号不能唯一标识该进程 操作系统支持的网络协议众多 不同协议的工作方式不同 地址格式也不同 因此 网间进程通信还要解决多重协议的识别问题 端口 网络中可以被命名和寻址的通信端口 是操作系统可分配的一种资源 网络通信的最终地址不仅是主机地址 还包括可以描述进程的某种标识符 TCP IP协议提出了协议端口 protocolport 简称端口 的概念 用于标识通信的进程 端口的使用 端口是一种抽象的软件结构 即进程通过系统调用与某端口建立连接 binding 后 传输层传给该端口的数据都被相应进程所接收 相应进程发给传输层的数据都通过该端口输出 在TCP IP协议的实现中 端口操作类似于一般的I O操作 进程获取一个端口 相当于获取本地唯一的I O文件 端口号 每个端口都拥有一个叫端口号 portnumber 的整数型标识符 用于区别不同端口 由于TCP IP传输层的两个协议TCP和UDP是完全独立的两个软件模块 因此各自的端口号也相互独立 如TCP有一个255号端口 UDP也可以有一个255号端口 二者并不冲突 地址 网络通信中通信的两个进程分别在不同的机器上 在互连网络中 两台机器可能位于不同的网络 这些网络通过网络互连设备 网关 网桥 路由器等 连接 因此需要三级寻址主机所在的网络地址主机的地址主机上进程的标识符通常主机地址由网络地址和主机地址组成 在TCP IP协议中用32位整数值表示 TCP和UDP均使用16位端口号标识用户进程 全相关 一个完整的网间进程通信需要由两个进程组成 并且只能使用同一种高层协议 也就是说 不可能通信的一端用TCP协议 而另一端用UDP协议 因此一个完整的网间通信需要一个五元组来标识 协议 本地地址 本地端口号 远地地址 远地端口号 这样一个五元组 叫做相关 association 即两个协议相同的半相关才能组合成一个合适的相关 或完全指定组成一连接 Winsock 在国际标准化组织开放系统互连ISO OSI模型中 Winsock运行于会话层和传输层的接口处 Winsock是应用程序与传输协议之间的接口 是用于数据输入输出的管道 大多数WindowsCE网络通信都通过Winsock接口来实现 Socket应用程序 应用程序不直接与TCP IP程序进行交互 而是通过Socket编程接口使用TCP IP协议栈的功能 Socket接口函数以库的形式存在 通过Socket编程接口 可以实现TCP客户 TCP服务器 UDP客户和UDP服务器等基本应用 基于TCP IP的应用程序 嵌入式WebServer 一个嵌入式Web服务器包括TCP IP栈 HTTP引擎 HTML生成器 格式解析器及Web页等 在数据采集过程中 被采集的数据首先通过数据采样保持器 A D转换器等相关单元进入Web服务器 经过服务器的HTML生成器 转换成同浏览器匹配的格式 HTTP引擎把这些数据集成到Web网页中 通过TCP IP栈把它输出到以太网 远程用户就可以通过浏览器来提取相关数据 嵌入式WebServer的构成 WindowsCE内核及相关驱动程序包括整个操作系统及目标机外设系统资源的初始化 其中包括网卡 串口等 完整的WebServer包使用标准的Socket接口建立面向连接的TCP服务器程序 会根据客户端的请求 输出相应的数据到客户端 WEB页面当客户端使用IE来访问该Web服务器时 能够将存储在设备上的页面发送到客户端IE上来浏览 WindowsCE中的WebServer WindowsCE自带有一个WebServer 在需要时添加到内核中即可 在PB右侧的Catalog页面下 打开CoreOS WindowsCEdevice CommunicationServicesandNetworking Server下 找到组件WebServer HTTPD 点右键 选择AddtoOSDesign Ping 运行WindowsCE的目标设备可以响应外部主机发送的ICMP回显请求报文 因此 外部主机可以通过ping目标设备 来判断设备是否可达 通过这种方法 也可以验证设备的以太网驱动程序或其它网络设备的驱动程序是否运行正确 设备的IP地址 子网掩码和网关IP地址等是否配置正确 以及连接目标设备的物理线路是否工作正常 编写Ping 编写一个ping的应用程序 应用在基于Wi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论