基于web的智能家居系统的设计(软件部分)_第1页
基于web的智能家居系统的设计(软件部分)_第2页
基于web的智能家居系统的设计(软件部分)_第3页
基于web的智能家居系统的设计(软件部分)_第4页
基于web的智能家居系统的设计(软件部分)_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

PAGE第一章智能家居简介智能家居,或称智能住宅,在英文中常用SmartHome。与智能家居的含义近似的还有家庭自动化(HomeAutomation)、电子家庭(ElectronicHome、E-home)、数字家园(Digitalfamily)、家庭网络(Homenet/NetworksforHome)、网络家居(NetworkHome),智能家庭/建筑(Inte1ligenthome/building)、在香港、台湾等地区还有数码家庭、数码家居等称法。

智能家居是以住宅为平台,兼备建筑、网络通信、信息家电、设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境。

智能家居可以定义为一个过程或者一个系统。利用先进的计算机技术、网络通讯技术、综合布线技术、将与家居生活有关的各种子系统,有机地结合在一起,通过统筹管理,让家居生活更加舒适、安全、有效。与普通家居相比,智能家居不仅具有传统的居住功能,提供舒适安全、高品位且宜人的家庭生活空间;还由原来的被动静止结构转变为具有能动智慧的工具,提供全方位的信息交换功能,帮助家庭与外部保持信息交流畅通,优化人们的生活方式,帮助人们有效安排时间,增强家居生活的安全性,甚至为各种能源费用节约资金。要完整地理解智能家居,有必要先对几个智能家居发展过程中有着重大影响的系统进行介绍。1.1家庭自动化(HomeAutomation)

家庭自动化系指利用微处理电子技术,来集成或控制家中的电子电器产品或系统,例如:照明灯、咖啡炉、电脑设备、保安系统、暖气及冷气系统、视讯及音响系统等。家庭自动化系统主要是以一个中央微处理机(CentralProcessorUnit,CPU)接收来自相关电子电器产品(外界环境因素的变化,如太阳初升或西落等所造成的光线变化等)的讯息后,再以既定的程序发送适当的信息给其它电子电器产品。中央微处理机必须透过许多界面来控制家中的电器产品,这些界面可以是键盘,也可以是触摸式荧幕、按钮、电脑、电话机、遥控器等;消费者可发送信号至中央微处理机,或接收来自中央微处理机的讯号。

家庭自动化是智能家居的一个重要系统,在智能家居刚出现时,家庭自动化甚至就等同于智能家居,今天它仍是智能家居的核心之一,但随着网络技术有智能家居的普遍应用,网络家电/信息家电的成熟,家庭自动化的许多产品功能将融入到这些新产品中去,从而使单纯的家庭自动化产品在系统设计中越来越少,其核心地位也将被子家庭网络/家庭信息系统所代替。它将作为家庭网络中的控制网络部份在智能家居中发挥作用。目前最有名的家庭自动化系统为美国的X-10。1.2家庭网络(Homenetworking)首先大家要把家庭网络和纯粹的“家庭局域网”分开来,我们还会提到“家庭局域网/家庭内部网络”这一名称,它是指连接家庭里的PC、各种外设及与因特网互联的网络系统,它只是家庭网络的一个组成部份。家庭网络是在家庭范围内(可扩展至邻居,小区)将PC、家电、安全系统、照明系统和广域网相连接的一种新技术。当前在家庭网络所采用的连接技术可以分为“有线”和“无线”两大类。有线方案主要包括:双绞线或同轴电缆连接、电话线连接、电力线连接等;无线方案主要包括:红外线连接、无线电连接、基于RF技术的连接和基于PC的无线连接等。

家庭网络相比起传统的办公网络来说,加入了很多家庭应用产品和系统,如家电设备、照明系统,因此相应技术标准也错综复杂,这里面也牵涉太多知名的网络厂家和家电厂家的利益,我们在智能家居技术一章中将对各种技术标准作详细介绍。家庭网络的发展趋势是将智能家居中其它系统融合进去,最终一统天下。1.3网络家电

网络家电是将普通家用电器利用数字技术、网络技术及智能控制技术设计改进的新型家电产品。网络家电可以实现互联组成一个家庭内部网络,同时这个家庭网络又可以与外部互联网相连接。

可见,网络家电技术包括两个层面:首先就是家电之间的互连问题,也就是使不同家电之间能够互相识别,协同工作。第二个层面是解决家电网络与外部网络的通信,使家庭中的家电网络真正成为外部网络的延伸。要实现家电间互联和信息交换,就需要解决:描述家电的工作特性的产品模型,使得数据的交换具有特定含义;

信息传输的网络媒介。在解决网络媒介这一难点中,可选择的方案有:电力线、无线射频、双绞线、同轴电缆、红外线、光纤。

目前认为比较可行的网络家电包括网络冰箱、网络空调、网络洗衣机、网络热水器、网络微波炉、网络炊具等。网络家电未来的方向也是充分融合到家庭网络中去。1.4信息家电(3C或者说IA)

信息家电应该是一种价格低廉、操作简便、实用性强、带有PC主要功能的家电产品。利用电脑、电信和电子技术与传统家电(包括白色家电:电冰箱、洗衣机、微波炉等和黑色家电:电视机、录像机、音响、VCD、DVD等)相结合的创新产品,是为数字化与网络技术更广泛地深人家庭生活而设计的新型家用电器,信息家电包括PC、机顶盒、HPC、DVD、超级VCD、无线数据通信设备、视频游戏设备、WEBTV、INTERNE电话等等,所有能够通过网络系统交互信息的家电产品,都可以称之为信息家电。目前,音频、视频和通信设备是信息家电的主要组成部分。另一方面,在目前的传统家电的基础上,将信息技术融人传统的家电当中,使其功能更加强大,使用更加简单、方便和实用,为家庭生活创造更高品质的生活环境,比如模拟电视发展成数字电视,VCD变成DVD,电冰箱、洗衣机、微波炉等也将会变成数字化、网络化、智能化的信息家电。从广义的分类来看,信息家电产品实际上包含了网络家电产品,但如果从狭义的定义来界定,我们可以这样做一简单分类:信息家电更多的指带有嵌入式处理器的小型家用(个人用)信息设备,它的基本特征是与网络(主要指互联网)相连而有一些具体功能,可以是成套产品,也可以是一个辅助配件。而网络家电则指一个具有网络操作功能的家电类产品,这种家电可以理解是我们原来普通家电产品的升级。信息家电由嵌入式处理器、相关支撑硬件(如显示卡、存储介质、IC卡或信用卡等读取设备)、嵌入式操作系统以及应用层的软件包组成。

信息家电把PC的某些功能分解出来,设计成应用性更强、更家电化的产品,使普通居民步人信息时代的步伐更为快速,是具备高性能、低价格、易操作特点的lnternet工具。信息家电的出现将推动家庭网络市场的兴起,同时家庭网络市场的发展又反过来推动信息家电的普及和深人应用。

我们可以看出,实际上家庭自动化产品、家庭网络产品、网络家电产品、信息家电产品都只是智能家居系统产品里的一种,它们有各自不同的产品特征,不能简单地将它们划等号。当然也有许多概念交叉的产品,如机顶盒你可以理解为是一个家庭网络产品、但同时又是一个信息家电产品。第二章设计概述基于Motorola多元化的DigitalDNATM技术,我们开发出应用于家庭的一系列智能化网络控制系统。

网络化的智能家居系统由智能家庭总线以及总线上挂接的多种功能模块(节点)构成。在一个对等型的网络上众多节点可以交换数据和相互控制,通过专门开发的ECHomePro软件,可以设定各节点之间的逻辑关联和工作模式。图1网络化智能家居系统的节点构成在解决智能住宅中的设备互联问题时,采用了分布式网络控制系统这一方

案,它非常适合众多的嵌入式智能设备发挥网络化的特点,更容易扩充和维护。由于采用了对等网、单一总线方式,使得系统的布线简洁、安装方便。所有

的终端设备可随时接入总线或脱离总线;

作为一套成本敏感的消费电子产品,应以提供实用化功能为原则,将其控制

在合理的价格范围。每个网络节点根据不同的功能需求,选择MC68HC08系列

的某一款微控制器。例如,在“以太网网关终端”和“智能灯光控制器”中,采

用了MC68HC908SR12;而在“红外家电控制器”、“智能电话控制器”等资源

要求相对较多的节点,采用MC68HC908GP32作为核心。本论文将选择最具有代表性的两个节点的设计情况进行深入介绍:以太网网关终端(ESWeb)该网关终端一端连接在小区的以太网上,另一端连接在家庭内的控制总线上。它可以提供三表传送、安防报警、紧急求助、网络远程控制等功能。该终端采用MC68HC908SR12设计,实现了TCP/IP协议栈及WebServer。智能灯光控制器(ESLight)

它是智能网络上一个典型的节点。具有轻触式调光控制、网络场景控制、红外遥控、预设存储等丰富功能。通过面板上的轻触按钮,可以控制灯光的开关和亮度,或者使多盏灯光进入某种预设的场景;也可以通过手持遥控器来控制住宅内所的灯光。通过遥控器上的场景设置按键,可以方便地设定灯光场景和迅速切换。在网络智能家居系统中,具有代表性的两个节点是“以太网网关终端”和“智能灯光控制器”。如下图所示,通过智能灯光控制器,可以对各盏灯光进行直接控制;通过以太网网络终端,可以实现对灯光亮度的远程控制和查询。图2简单的控制网络框图下面将分别介绍它们的设计方案。2.1以太网网关终端2.1.1背景信息随着互联网技术的发展,宽带网络在全国范围内迅速发展。许多新建住宅小

区都将以太网铺设到了用户家庭,使得整个小区的居民通过以太网实现宽带上网

成为可能。同时,随着社区服务的完善,智能小区需要通过一个安装在每个家庭的终端设备实现信息发布、物业管理、三表传送、紧急求助等功能。以往,这样的信息终端和社区服务中心通过铺设专线,如485总线来进行连接,工程量大,故障率高,且由于只能采取主机轮循方式而效率较低。如果能够利用已经铺设到用户家庭的、现成的、稳定的以太网络组建社区综合服务体系是一项非常有意义的事情。而目前基于以太网的信息终端通常采用32-bit的微处理器和WindowsCE等通用操作系统,这种结构开发周期短、功能强、信息交换速率高、但致命的缺点是成本太高,这也是一直在国内无法推广的主要问题。因此,向智能小区的每个住宅提供一个基于8位MCU连接Ethernet的低成本信息终端,不仅具有实用价值,而且市场前景也相当广阔。2.1.2设计目标在本方案中,设计了一台家庭信息终端,安装在智能小区的每个家庭中,提供三表传送、安防报警、紧急求助、网络远程控制等功能。它是相对独立的智能测控设备,可以直接与小区的以太网相连接。作为一个成本敏感的消费电子产品,应以提供实用化功能为原则,将其控制在一个适当合理的价格范围。在此应用中,信息终端对数据交换的速率要求并不高(如1Mb/s以下),所以可采用价格低廉的高速MCU,写入TCP/IP协议.经过分析,我选择了MC68HC908SR12作为设计核心,并利用10M以太网芯片RTL8019AS建立Ethernet网络连接。在软件设计方面的重点是实现TCP/IP协议栈,由于RAM和FLASH空间的限制,必需设计出相当精炼的网络连接协议栈,同时又需要保证其可靠性。基于IP的设计使它能通过一个开放的网络平台相互通讯。68HC908是具备FLASH在线编程能力的MCU,为了满足调试、升级的需要,我们设计了利用以太网进行在线程序升级的代码,使得信息终端可以通过下载新的应用程序来获得更丰富的功能。

由于信息终端是一台嵌入式WWW服务器,使得用户在世界任何地方随时可

以上网通过WWW浏览器了解家中情况并简单控制家中电器,进行设防/撤防;

真正让用户每天都能感受到家庭智能化的强大魅力。2.1.3功能特性1.MCU采用Motorola的MC68HC908SR12(7.4MHzBusFrequency,512byteRAM,12KBFLASH);

2.10MEthernet采用RTL8019AS以太网芯片;

3.软件上实现协议:ARP,ICMP,TFTP,UDP,TCP,IP,TELNET,HTTP,CGI等;

4.网络类型:Ethernet通讯介质:UTP(非屏蔽双绞线);

5.网络带宽:10Mbit,由于处理器限制,实际只能达到50Kbit/s左右的传输速率;

6.输入:4路光电隔离,可以配接传感器,紧急求助按钮等;

7.输出:4路光电隔离输出,可配接功率驱动模块;

8.键盘:16键,功能:智能终端配置、设防/撤防等;实际上,在68HC908系列MCU上实现了TCP/IP协议栈之后,其应用领域

是相当广泛的:1.网络化控制:电机、灯光、工业自动化、家庭自动化……2.网络仪表:远程分布式数据采集……3.网络家电:智能家电、WWW方式监控界面、在线更新……4.网络摄像机:在远程浏览器上可以进行视频监控;5.家庭网关:非INTERNET协议的轻量级设备联网的转换器;2.2智能灯光控制器2.2.1背景信息随着人们生活质量的提高,灯具已不单纯是实现室内基本照明的工具,而且是建筑装饰的一种实用艺术品。当家里有各式各样的灯具之后,将它们精心地搭配在一起,并且达到最适合气氛的效果是高品质生活的需要。同时目前灯光的控制主要还是手动形式,逐个地去控制所有的灯具,这样不仅麻烦而且效率低下,也不符合现代舒适生活的标准。因此,一个可以对灯光进行方便的控制,同时提供场景组合等功能的智能化

灯光系统不仅具有实用价值,而且市场前景也相当广阔。2.2.2设计目标设计一个智能化灯光控制器,安装在家中的各个房间,提供轻触式灯光控制、红外遥控、场景组合、预设存储等丰富功能。通过面板上的轻触按钮,可以控制灯光的开关和亮度,或者使多盏灯光进入某种预设的场景;也可以通过手持遥控器来控制住宅内所有的灯光。通过遥控器上的场景设置按键,可以方便地设定灯光场景和迅速切换。系统分为接收外来控制信号和执行控制操作两部分。为了接收控制信号,系统需具备红外接收功能,按键输入面板。为了对灯具执行控制,需要设计220V调光控制电路。利用MC68HC908SR12的FLASH在线刷新(ISP)能力,我们设计了一套可重用的内核(包含BIOS与OS),通过与内核的交互可以方便地在线下载应用层的程序。

应用层的程序包括以下功能:开关面板按键输入判断、红外遥控器接收、预设场景存储、调光可控硅控制。由于MC68HC908SR12具有丰富的外围接口资源,并有着很高的可靠性和运算速度,非常适合于该款产品的设计。2.2.3功能特性1.MCU采用Motorola的MC68HC908SR12;

2.RS485总线型网络,通讯波特率19200;

3.输入:轻触按键,红外遥控器。

4.输出:开关输出,调光输出;

5.采用简单的实时多任务内核;

6.网络化的开关按钮控制,可以通过Windows版本软件任意设定;

7.多种场景的设置,存储,及执行。第三章硬件描述

整个系统的核心由MC68HC908SR12构成。它的内部框图如图3所示:图3MC68HC908SR12内部框图对于以太网网关终端(ESWeb)和智能灯光控制器(ESLight)的设计,选择MC68HC908SR12作为核心处理器是基于以下理由:1.较低的成本:由于是家用设备,对成本非常敏感;而SR12的价格,单芯片的解决方案,使得整体成本可以降低;

2.适用的功能:通过ESWeb实现基于Web浏览器的网络远程控制界面相对简单,用高端处理器或者PC来实现显得不够经济;我们编写的TCP/IP协议栈约占用7KBFLASH和380BytesRAM,SR12完全可以满足这一需求并有富余。此外,高达8MHz的总线频率使得它和其他MCU相比具有较强的处理能力,经过实测,在以太网上传输HTML页面并没有感到特别的延迟;对于ESLight来说,需要10KB~12KB的空间来存储代码和配置信息,SR12恰好能满足这一需求。

3.在线升级能力:对于ESWeb,由于每个家庭的设备情况不一样,要能根据实际情况形成不同的网页控制页面;而MC68HC908系列的芯片均支持FLASH的在线编程能力,我们设计了一套运行在Windows环境的配置软件,可以根据每个家庭的情况定制不同的HTML页面下载到SR12芯片上;对于ESLight,可以在线下载关联定义、场景配置、遥控器接收定义等信息,这些信息可以在掉电后存储。

4.足够的器件资源:SR12具有多达31个GPIO,可以很方便地和以太网控制器RTL8019AS相连接;剩余接口可以用来扩展传感器、键盘、功率输出等接口;内置的温度传感器和10-bitAD转换器可以用来采集温度和模拟量数据;通过时钟单元的输入捕获功能,还可以实现对水、电、气三表的脉冲输出采集。在ESLight的设计中,由于需要对可控硅进行控制,一方面,需要精确地获取220V交流电中的过零信息,另一方面,也需要通过定时器控制可控硅的开关时间,SR12的两个IRQ以及两个定时器能很好地满足两路调光控制器的设计要求。

5.安全可靠:系统要有非常高的可靠性,不易出现误动作,例如,在灯光系统中,由于和220V交流电距离很近,不能受到交流电的影响。由于MC68HC908系列的芯片在稳定性和抗干扰能力方面表现不俗,所以能极好地满足这一要求。接下来,将分别描述两个节点的硬件设计细节。3.1以太网网关终端3.1图4信息终端模块硬件系统框图硬件由以下几部分组成:

1.单片机及其外围器件,主要是:MC68HC908SR12、PLL(32.768KHz晶体等)、LED指示灯;

2.以太网控制器部分,主要是RTL8019AS、耦合变压器、RJ45插座、20MHz晶体;

3.外置存储器,由一片接口的EEPROM构成。通过SR12内置的接口连接;4.家庭控制网络连接部分,由MAXIM公司的MAX487、RJ11插座构成。

5.外部接口,16键按键键盘、4路模拟量输入、4路数字量输入、2路脉冲量输入;

6.电源部分,由一片7805提供5V的直流电压。3.1图5RTL8019AS部分电路图6RS485电平转换部分的电路图3.2智能灯光控制器3.3.1硬件框图图7智能灯光控制器的原理框图硬件由以下几部分组成:

1.单片机及其外围器件,主要是:MC68HC908SR12、PLL(32.768KHz晶体等)、LED指示灯、蜂鸣器;

2.按键输入接口,在面板上,提供6键的按钮,作为调光控制或场景控制;

3.红外遥控接口,在面板上有一个红外遥控器接收窗口,可以实现红外遥

控信号的接收;

4.调光驱动部分,使用两片可控硅(SCR,Silicon-ControlledRectifier,又称硅控整流器)进行调光控制。通过一片光藕(MOC3021),从220V交流电上取出过零点信号作为同步,过零信号表现为一个低电平脉冲,连接到SR12的IRQ1、2上作为中断输入;

5.家庭控制网络连接部分,由MAXIM公司的MAX487、RJ11插座构成。

6.电源部分,由控制总线可提供12V直流电压,由一片7805提供5V的直流电压。第四章软件描述

我们用汇编语言实现了一段启动代码(BootCode),而全部的应用程序则采

用C语言编程,编译环境为HiwareC。以太网网关终端的软件框图如下:图8以太网网关终端的软件框图智能灯光控制器的软件框图如下:图9智能灯光控制器软件框图4.1启动代码(BootCode)Motorola的MC68HC908SR12是片内集成FLASH的8位单片机,FLASH擦写速度快,可靠性高,可独立擦写至少1万次以上,所以在需周期修改存储的数据和代码的场合,都是理想的选择。同时,表贴工艺(SMD)因其使相同集成度的器件封装性能更好、尺寸更小等优点,越来越得到推广。但是这也给嵌入式系统的开发带来了新的问题:表贴的芯片一旦焊接到PCB板上,就很难再取下来,如果事先写入的程序错误或者丢失,则会给修改或恢复带来诸多的麻烦。在本项目中,包括SR12在内的大部分器件选择了贴片形式的,因此需要实现程序的在系统编程。如果通过Monitor方式在线编程,那么需要在PCB板设

计时预留相应的管腿和跳线。但在本设计中由于体积限制无法预留。因此,我们采用了固定BOOT代码的方式。BOOT代码的工作流程如图10所示。

我们将烧写了BOOT代码的芯片直接焊接到目标板上,通过串口通讯就可以

随时更新目标板上的程序,无需设置任何跳线,非常方便。Boot代码约为1.5K,如果去掉其中的CRC校验计算部分,改为Checksum校验和,代码将更简洁。图10BOOT代码工作流程图有了Boot代码,调试的过程为:

1.通过串口连接目标板;

2.编译程序,生成SX格式文件;

3.复位目标板,在3秒钟的延时时间内,通过自行编写的DLS19工具,将S19格式文件下载到目标板上;

4.程序将自动按照正常工作状态开始执行。此时,可以通过串口打印信息,在DLS19工具中进行调试。4.2TCP/IP协议栈设计4.2.1现有的8-bitMCU连接网络的方案比较利用8位MCU通过精简的TCP/IP协议栈来连接以太网,现在已有的方案

的如表格1所示。表格1常见的MCU连接网络的方案比较可见,目前尚无运行在Motorola8-bitMCU上的具备以太网连接功能、支持TCP/IP协议的解决方案。因此,在本项目中,希望能够在Motorola典型的8位单片机MC68HC908SR12上做到以太网协议栈的支持。4.2.2现有的嵌入式TCP/IP协议栈的比较TCP/IP最先是在UNIX系统里实现的,后来的LINUX、DOS、WINDOWS也实现了TCP/IP,随后TCP/IP协议也被移植到其它嵌入式的处理器上,

由于指令以及资源上的原因,在UNIX上实现的TCP/IP协议的原代码并不能够直接移植到8位的单片机上。单片机的程序空间是极为有限的,直接寻址的空间仅64K字节,可用的内存RAM也是非常小的,最多只能扩64K的RAM。

单片机的运算速度也极为有限,一般只有2MIPS,而电脑上的处理能力在

100MIPS以上。

因此,嵌入式系统尤其是8位单片机上的TCP/IP协议栈需要高度简化专门设计。可以用来参考的协议栈包括如下表所示。表格2常见嵌入式TCP/IP协议栈比较在本方案中,选择了TinyTCP、uIP0.6作为参考设计。4.2.3TCP/IP原理简述网络协议栈网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。TCP/IP通常被认为是一个四层协议系统,如图11所示。每一层负责不同的功能。图11网络协议层(1)数据链路层,有时也称为网络接口层。通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。(2)网络层,有时也称作互联网层。处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议)、ICMP协

议(Internet互联网控制报文协议)以及IGMP协议(Internet组管理协议)。这里主要讨论IP协议。(3)传输层主要为两台主机上的应用程序提供端到端的通信。TCP为两台

主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。(4)应用层负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都

会提供下面这些应用:1.HTTP超文本传输控制协议;2.TELNET远程登录;3.FTP文件传输协议;4.SMTP简单邮件传送协议;5.SNMP简单网络管理协议。由于8位嵌入式网络通常面向专门的、小数据量的应用,实现FTP、SMTP

等协议栈并没有太大意义。因此,这里主要讨论HTTP协议。

因为数据链路层主要是网络接口卡及驱动,由RTL8019AS来实现,所以下

面讨论网络层、传输层和应用层协议栈的实现。在传输的数据报文中,各个层次的协议栈都会添加自己的首部和尾部数据。如图12所示。图12各协议栈对HTTP数据报文的贡献.1网络层IP是TCP/IP协议族中最为核心的协议。Internet所有的数据都以IP数据报格式传输。IP协议最大的特点是提供不可靠的和无连接的数据包传送服务。IP数据包的格式如图13所示。图13IP数据包的格式.2传输层传输层中包括TCP(传输控制协议)、UDP(用户数据报协议)等。

用TCP协议传输的所谓数据实际指的是数据流中的段,而用UDP协议传输的所谓数据指的是数据包。IP所提供的是非可靠的、无连接能力的、向指定主机地址的包传送的协议。TCP和UDP都属于IP上层的传输层协议。二者都使用端口号作为送往主机的解码地址。端口号由各个具体应用所确定,同时使用多个端口号能完成“一机多网”的操作。每个UDP数据包和TCP数据段中都含源端口号和目的端口号。为接收远端的输入而等待着执行接入操作的主机是所谓的服务器,发起接入请求的主机就是所谓的客户机。

服务器为最常服务的应用如FTP(文件传输协议)、Email和HTTP,分配了知名的端口号并对其进行持续地监听。作为传输源的客户机通常选择随机的端口号,并向已分配了知名端口号的服务器发出接入请求。客户应用所取的端口号应大于1024,因1024以下的端口号是为知名应用而预留的。(1)TCP协议TCP提供一种面向连接的、可靠的字节流传送服务。TCP数据包的结构如图14所示。图14TCP数据包的结构(2)UDP协议UDP被认为是一个应用程序和IP间的接口,因为应用程序从不直接使用IP。UDP层很小,包含8个字节的头。但需要应用层来负责错误恢复,重传等等。UDP不够可靠,当数据包到达目标时没有确认。它不处理以混乱顺序到来的报文,也不提供反馈来控制主机间的信息流。因此UDP消息会丢失、重复或顺序混乱。这意味着使用UDP的程序应该让传输可靠。UDP主要用在传输视频和音频。.3应用层HTTP是WWW上的协议。当用户要浏览服务器上的一个网页时,一个HTTP请求就会从用户的浏览器发到HTTP服务器。服务器响应这个请求,把指定的网页传送回来,用户才看到了网页。下面是一个典型的客户端向服务器发送请求的例子:

GETDestination_IP/index.htmlhttp/1.0GET代表客户端的请求命令,而服务器也受理这个命令;Destination_IP代表远程主机的IP地址;index

温馨提示

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

评论

0/150

提交评论