移动互联网关键技术

上传人:抢*** 文档编号:243127363 上传时间:2024-09-16 格式:PPT 页数:182 大小:1.48MB
返回 下载 相关 举报
移动互联网关键技术_第1页
第1页 / 共182页
移动互联网关键技术_第2页
第2页 / 共182页
移动互联网关键技术_第3页
第3页 / 共182页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,第二章 移动互联网技术基础,182,第二章 移动互联网技术基础,2.1,互联网技术,2.2,移动通信技术,2.3,移动互联网,2.4,移动智能终端与操作系统,2.5,云计算技术,2.1,互 联 网 技 术,互联网,(Internet,,早期音译为因特网,),在今天已经非常普及,很多人每天都要花一定时间上网,阅读新闻,淘宝购物,或者从事其他活动。互联网是由全世界千千万万台计算机通过,TCP/IP,协议相互连接而成的世界上最大的网络。这个网络在不断扩大,不仅新的计算机在持续接入,而且新的技术也在不断融入。移动互联网的产生和发展正是以这个现有互联网实体为基础而不断发展的,它又反过来推动这一网络延伸到人们的手机终端。,2.1.1,互联网的起源与发展,互联网源于,1969,年,美军牵头组建的,ARPA,网,它起初把美国,加利福尼亚大学洛杉矶分校,、斯坦福大学研究学院、,加利福尼亚大学,和,犹他州大学,的四台主要计算机连接起来,后来美国其他一些高校和科研机构也陆续加入进来。,1983,年,美国,国防部,将阿帕网分为,军网,和民网,于是,越来越多的学校和公司加入到民网当中,渐渐的,这个民用网络发展为今天的互联网。,在,ARPA,网产生之初,通过接口信号处理机实现互联的电脑并不多,大部分电脑相互之间不兼容,不同类型的电脑联网存在很多困难。建立一种大家共同都必须遵守的标准,让不同类型电脑能够实现资源共享,成为当时科学家的当务之急。,1973,年,卡恩和瑟夫以包切换理论为基础,开始研究一种对各种操作系统普适的协议,这个协议即,TCP/IP,协议,(Transmission Control Protocol,,,TCP,;,Internet Protocol,,,IP),。通俗而言,,TCP,负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而,IP,是给网络上每一台电脑规定一个地址。,1974,年,12,月,,卡恩和瑟夫的第一份,TCP,协议详细说明正式发表。当时美国国防部与三个科学家小组签定了完成,TCP/IP,的协议,结果由瑟夫领衔的小组率先完成,首先制订出了具有详细定义的,TCP/IP,协议标准。当时还做了一个试验,将信息包通过点对点的卫星网络,再通过陆地电缆,接下来通过卫星网络,最后由地面传输,贯串欧洲和美国,经过各种电脑系统,全程,9.4,万公里竟然没有丢失一个数据位,远距离的可靠数据传输证明了,TCP/IP,协议的成功。,1983,年,1,月,1,日,已经运行了较长时期且曾被人们习惯了的,NCP,被停止使用,,TCP/IP,协议作为互联网上所有主机间的共同协议。,TCP/IP,协议的产生和推广是互联网发展历史上具有重大革命性意义的事件,从此,互联网才真正进入了大规模发展时期。,2.1.2 ISO/OSI,模型,1,OSI,模型框架,要理解,TCP/IP,协议,必须先理解,OSI,模型。,OSI,模型的全称是开放系统互连参考模型,(Open System Interconnection Reference Model,,,OSI/RM),,它由国际标准化组织,(International Standard Organization,,,ISO),提出,用于网络系统互连,所以又被称为,ISO/OSI,模型。,OSI,参考模型发布后,并没有形成实际的产品,但是它成为包括,TCP/IP,协议在内的很多重要通信协议的思想基础,对于理解,TCP/IP,的运作机制有很大帮助。,OSI,模型采用分层结构,如图,2-1,所示,它把通信过程所要完成的工作分成多个层面,每一层完成某个层次的工作内容,如物理层实现物理信号的收发,网络层实现联网等。,图,2-1 OSI,参考模型,(1),每一层都为其上一层提供服务,并为其上一层提供一个访问接口或界面。,(2),不同主机之间的相同层次称为对等层。如主机,A,中的表示层和主机,B,中的表示层互为对等层,主机,A,中的会话层和主机,B,中的会话层互为对等层。,(3),对等层之间互相通信需要遵守一定的规则,如通信的内容、通信的方式等,称之为协议。,OSI,参考模型通过将协议划分为不同的层次,简化了问题分析、处理过程以及网络系统设计的复杂性。在,OSI,参考模型中,从下至上,每一层完成不同的、目标明确的功能。,2,OSI,模型数据封装,数据要在网络上传输,必须要有一定格式,使通信双方能够识别其首尾,并能对其有效控制。把数据包装成这种格式的过程就叫数据封装。,OSI,模型中的数据封装过程如图,2-2,所示。当一台主机需要传送用户数据时,数据首先需通过应用层接口进入应用层。在应用层,用户数据被加上应用层报头,(Application Header,,,AH),,形成应用层协议数据单元,(Protocol Data Unit,,,PDU),,然后被递交到下一层表示层。表示层并不关心应用层数据内容,而是把整个应用层数据包看成是一个整体进行封装,即加上表示层的报头,(Presentation Header,,,PH),。然后递交到下层会话层。,图,2-2,OSI,参考模型中的数据封装过程,以此类推,会话层、传输层、网络层、数据链路层也都要分别给上层递交下来的数据加上自己的报头,分别是会话层报头,(Session Header,,,SH),、传输层报头,(Transport Header,,,TH),、网络层报头,(Network Header,,,NH),和数据链路层报头,(Data link Header,,,DH),。其中,数据链路层还要给网络层数据加上数据链路层报尾,(Data link Termination,,,DT),形成最终的一帧数据。,当一帧数据通过物理层传送到目标主机的物理层时,该主机的物理层把它递交到上层数据链路层。数据链路层负责去掉数据帧的帧头部,DH,和尾部,DT(,同时还进行数据校验,),。如果数据没有出错,则递交到上层网络层。同样,网络层、传输层、会话层、表示层、应用层也要做类似的工作。最终,原始数据被递交到目标主机的具体应用程序中。,3,各分层的功能,(1),物理层,(Physical Layer),。物理层规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性,如指定电压大小、线路速率和电缆的引脚数。简单的说,物理层确保原始数据可以在各种物理媒体上传输。该层为上层协议提供了一个传输数据的物理媒体。在这一层,数据的单位称为比特,(bit),。属于物理层定义的典型规范代表包括:,EIA/TIA RS-232,、,EIA/TIA RS-449,、,V.35,、,RJ-45,等;物理层的设备包括:,RJ-45,、各种电缆、串口、并口、接线设备、网络接口卡,(NIC),等;物理层也可以包括低层网络软件定义如何将串行比特流分解成数据包。,(2),数据链路层,(Data Link Layer),。数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。在这一层,数据的单位称为帧,(frame),,数据链路层协议的代表包括:,SDLC,、,HDLC,、,PPP,、,STP,、帧中继等。数据链路层将数据包组合为字节,字节组合为帧,使用,MAC,地址提供对介质的访问。其主要功能包括:在两个网络实体之间提供数据链路连接的建立、维持和释放管理;构成数据链路数据单元,(,帧,),,并对帧定界、同步、收发顺序的控制;在传输过程中进行流量控制,包括差错检测,(Error Detection),和差错控制,(Error control),等方面,它只提供导线的一端到另一端的数据传输。数据链路层典型的协议有:,ATM,、,IEEE 802.2,、帧中继、,HDLC,等。,(3),网络层,(Network Layer),。网络层为传输层的数据传输提供建立、维护和终止网络连接的手段,它把上层来的数据组织成数据包在节点之间进行交换传送,并且负责路由控制和拥塞控制。提供它还能逻辑寻址,以便进行路由选择。网络层提供的路由和寻址功能,使两个终端系统能够互连,并且具有一定的拥塞控制和流量控制的能力。在这一层,数据的单位称为数据包,(packet),。典型的网络层协议的代表包括:,IP,、,IPX,、,RIP,、,OSPF,等。,(4),传输层,(Transport Layer),。传输层负责将上层数据分段并提供端到端的、可靠或不可靠的传输,处理端到端的差错控制和流量控制。传输层数据的单位称为数据段,(segment),,典型的传输层协议有:,TCP,、,UDP,、,SPX,、,NetBIOS,等。,(5),会话层,(Session Layer),。会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。,(6),表示层,(Presentation Layer),。表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。表示层协议的代表包括:,ASCII,、,ASN.1,、,JPEG,、,MPEG,等。,(7),应用层,(Application Layer),。应用层为操作系统或网络应用程序提供访问网络服务的接口,提供用户接口。应用层协议的代表包括:,Telnet,、,FTP,、,HTTP,、,SNMP,等。,2.1.3 TCP/IP,模型,1,TCP/IP,模型层次结构,OSI,模型的提出本来是为了解决不同厂商、不同结构的网络产品之间互连时遇到的不兼容性问题,但是该模型过于复杂,阻碍了其在计算机网络领域的实际应用。相比之下,由技术人员自己开发的,TCP/IP,协议则获得了更为广泛的应用。成为当前通信领域的主要标准。,TCP/IP,模型也是层次结构,分为四个层次:应用层、传输层、网络互连层和网络接口层。图,2-3,是,TCP/IP,模型与,OSI,模型的对比。,图,2-3 TCP/IP,与,OSI,模型的对比,在,TCP/IP,模型中,去掉了,OSI,模型中的会话层和表示层,这两层的功能被合并到应用层实现,同时将,OSI,模型中的数据链路层和物理层合并为网络接口层。当前在用的部分协议在,TCP/IP,模型中的位置如图,2-4,所示。,(1),网络接口层。实际上,,TCP/IP,模型没有真正描述这一层如何实现,只是要求能够提供给其上层网络互连层一个访问接口,以便在其上传递,IP,分组。由于这一层次未被定义,所以其具体的实现方法随着网络类型的不同而不同。,图,2-4,TCP/IP,模型层次结构,(2),网络互连层。网络互连层是整个,TCP/IP,协议的核心。其功能是把分组发往目标网络或主机。同时,为了尽快发送分组,可能需要沿不同的路径同时进行分组传递,因此,分组到达的顺序和发送的顺序可能不同,这就需要上层必须对分组进行排序。网络互连层除了需要完成路由的功能外,也可以实现不同类型的网络,(,异构网,),互连的任务。网络互连层定义了分组格式和协议,即,IP,协议。,TCP/IP,协议中的网络互连层功能由,IP,协议规定和实现,故又称为,IP,层。这一层的协议还包括:,ICMP,网际控制报文协议、,ARP,地址解析协议、,RARP,反向地址解析协议、,RIP,协议等。这一层典型的设备有路由器、三层交换机等。,(3),传输层。在,TCP/IP,模型中,传输层的功能是使源主机和目标主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议,即,TCP(,传输控制协议,),和,UDP(,用户数据报协议,),。,TCP,协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主机。在发送端,它负责把上层传送下来的字节流分成报文段并传递给下层;在接收端,它负责把收到的报文进行重组后递交给上层。,TCP,协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据。,UDP,协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。,(4),应用层。,TCP/IP,模型将,OSI,参考模型中的会话层和表示层的功能合并到应用层实现。应用层面向不同的网络应用引入了不同的应用层协议。其中,有基于,TCP,协议的,例如:文件传输协议,(File Transfer Protocol,,,FTP),、虚拟终端协议,(TELNET),、超文本链接协议,(Hyper Text Transfer Protocol,,,HTTP),;也有基于,UDP,协议的。,2,IP,报文格式,IP,协议,是,TCP/IP,协议,族中的核心,协议,,所有的,TCP,、,UDP,、,ICMP,、,IGMP,数据都被封装在,IP,数据报中传送,如图,2-5,所示。,IP,报头格式如图,2-6,所示,各字段的长度和内容分别为:,(1),版本字段:字段长度,4,比特,用以表明,IP,协议的版本号,当前版本一般为,IPv4,,字段为,0100,,,IPv6,则为,1100,。,图,2-5 IP,报文封装,(2),报头长度:指首部占,32,比特字段的数目,包括任何选项。由于它是一个,4,比特字段,因此首部最长为,60,个字节,(1532/8=60,字节,),。,IP,首部始终是,32 bit,的整数倍。,IP,数据报报头的最小长度为,20,个字节,(,不含填充字段和,IP,选项字段的,IP,报头是最常见的,IP,报头,为,20,个字节,),。,(3),服务类型:字段长度,8,比特,用于指定数据报所要求的服务质量,(TOS),。,(4),总长度字段:指整个,IP,数据报的长度,以字节为单位。由于该字段长,16,比特,所以,IP,数据报最长可达,65 535,字节。总长度字段是,IP,首部中必要的内容,(,数据长度,=,总长,-,报头长度,),。,(5),标识符:字段长度,16,比特,每个数据报都必须由唯一的标识符来标识,以便使接收主机能重装被分段的数据报。,(6),标志位:字段长度,3,比特,用于分段控制,其中,第,0,位为预留位。,(7),段偏移字段:字段长度,13,比特。如果一份数据报要求分段的话,此字段指明该段偏移距原始数据报开始的位置。,(8),生存期,(Time to Live,,,TTL),字段:字段长度,8,比特。用来设置数据报最多可以经过的路由器数。由发送数据的源主机设置,通常为,32,、,64,、,128,等。每经过一个路由器,其值减,1,,直到,0,时该数据报被丢弃。,(9),协议字段:占,8,比特。指明,IP,层所封装的上层协议类型,如,ICMP(1),、,IGMP(2),、,TCP(6),、,UDP(17),等。,(10),头部校验和字段:占,16,比特。内容是根据,IP,头部计算得到的校验和码。计算方法是对头部中每个,16,比特进行二进制反码求和,(,与,ICMP,、,IGMP,、,TCP,、,UDP,不同,,IP,不对头部后的数据进行校验,),。,(11),源,IP,地址、目标,IP,地址字段:各占,32,比特。用来标明发送,IP,数据报文的源主机地址和接收,IP,报文的目标主机地址。,(12),可选项字段:占,32,比特。用来定义一些任选项:如记录路径、时间戳等。这些选项很少被使用,同时并不是所有主机和路由器都支持这些选项。可选项字段的长度必须是,32,比特的整数倍,如果不足,必须填充,0,以达到此长度要求。,图,2-6,IP,头部格式,3,TCP,数据段格式,TCP,是一种可靠的、面向连接的字节流服务。源主机在传送数据前需要先和目标主机建立连接。然后,在此连接上,被编号的数据段按序收发。同时,要求对每一个数据段进行确认,保证了传送可靠性。如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。,(1),源、目标端口号字段:字段长度均为,16,比特。,TCP,协议通过使用所谓“端口”来标识源端和目标端的应用进程。端口号可以使用,0,到,65 535,之间的任何数字。在收到服务请求时,操作系统动态地为客户端的应用程序分配端口号。在,服务器,端,每种服务在特定端口为用户提供服务,比如,Web,服务默认端口为,80,,,FTP,为,21,。,(2),顺序号字段:字段长度,32,比特。用来标识从,TCP,源端向,TCP,目标端发送的数据字节流,它表示在这个报文段中的第一个数据字节。,(3),确认号字段:字段长度,32,比特。只有,ACK,标志为,1,时,确认号字段才有效。它包含目标端所期望收到源端的下一个数据字节。,(4),头部长度字段:字段长度,4,比特。给出头部占,32,比特的数目。没有任何选项字段的,TCP,头部长度为,20,字节;最多可以有,60,字节的,TCP,头部。,(5),标志位字段:字段长度,6,比特,其中每个比特的含义分别为:,URG(,紧急指针有效,),、,ACK(,确认序号有效,),、,PSH(,接收方应该尽快将这个报文段交给应用层,),、,RST(,重建连接,),、,SYN(,发起一个连接,),、,FIN(,释放一个连接,),。,(6),窗口大小字段:字段长度,16,比特,用来进行流量控制,单位为字节数,这个值是本机期望一次接收的字节数。,(7) TCP,校验和字段:字段长度,16,比特。该字段对整个,TCP,报文段进行校验和计算,并由目标端进行验证。,(8),紧急指针字段:字段长度,16,比特。它是一个偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。,(9),选项字段:占,32,比特。可能包括“窗口扩大因子”、“时间戳”等选项。,4,UDP,数据段格式,UDP,是一种不可靠的、无连接的数据报服务。源主机在传送数据前不需要和目标主机建立连接。数据被冠以源、目标端口号等,UDP,报头字段后直接发往目的主机。这时,每个数据段的可靠性依靠上层协议来保证。在传送数据较少、较小的情况下,,UDP,比,TCP,更加高效。,(1),源、目标端口号字段:字段长度,16,比特,用来标识源端和目标端的应用进程。,(2),长度字段:字段长度,16,比特,用来表示,UDP,头部和,UDP,数据的总长度字节。,(3),校验和字段:字段长度,16,比特,用来对,UDP,头部和,UDP,数据进行校验。与,TCP,不同的是,对,UDP,来说,此字段是可选项,而,TCP,数据段中的校验和字段是必须有的。,5,套接字,在每个,TCP,、,UDP,数据段中都包含源端口和目标端口字段。通常把一个,IP,地址和一个端口号合称为一个套接字,(Socket),,而一个套接字对,(Socket Pair),可以唯一地确定互连网络中每个连接的双方,(,客户,IP,地址,+,客户端口号、服务器,IP,地址,+,服务器端口号,),。需要注意的是,不同的应用层协议可能基于不同的传输层协议,如,FTP,、,TELNET,、,SMTP,协议基于可靠的,TCP,协议,而,TFTP,、,SNMP,、,RIP,协议基于不可靠的,UDP,协议。,同时,有些应用层协议占用了两个不同的端口号,如,FTP,占用,20,、,21,端口,,SNMP,占用,161,、,162,端口。这些应用层协议在不同的端口提供不同的功能。如,FTP,的,21,端口用来侦听用户的连接请求,而,20,端口用来传送用户的文件数据;再如,,SNMP,的,161,端口用于,SNMP,管理进程获取,SNMP,代理的数据,而,162,端口用于,SNMP,代理主动向,SNMP,管理进程发送数据。还有一些协议使用了传输层的不同协议提供的服务。如,DNS,协议同时使用了,TCP 53,端口和,UDP 53,端口。,DNS,协议在,UDP,的,53,端口提供域名解析服务,在,TCP,的,53,端口提供,DNS,区域文件传输服务。,6,TCP,连接建立、释放时的握手过程,理解,TCP,连接建立、释放时的握手过程,对于开发基于,TCP/IP,协议的通信程序是十分重要的。一个,TCP,连接的建立需要三次握手过程,三次握手的目标是使数据段的发送和接收同步。同时也向其他主机表明其一次可接收的数据量即窗口大小并建立逻辑连接。这三次握手的过程分别为:,(1),第一次握手,源主机发送一个同步标志位,(SYN),置,1,的,TCP,数据段。此段中同时标明初始序号,(ISN),,,ISN,是一个随时间变化的随机值。,(2),第二次握手,目标主机发回确认数据段,此段中的同步标志位,(SYN),同样被置,1,,且确认标志位,(ACK),也置,1,,同时在确认序号字段表明目标主机期待收到源主机下一个数据段的序号,(,即表明前一个数据段已收到并且没有错误,),。此外,此段中还包含目标主机的段初始序号。,(3),第三次握手,源主机再回送一个数据段,同样带有递增的发送序号和确认序号。这样,,TCP,会话的三次握手完成。接下来,源主机和目标主机可以互相收发数据。数据传输结束后,通信的双方都可释放连接,这个过程需要四次握手过程:,(1),第一次握手,源主机发送一个释放连接标志位“,FIN=1,,,seq=u”,给目标主机,意思是请求结束会话,等待目标主机确认。,(2),第二次握手,目标主机发送“,ACK=1,,,seq=v”,,确认号“,ack=u+1”,给客户,而这个报文段自己的序号“,seq = v”,。从源主机到目标主机这个方向的连接就释放了,,TCP,连接处于半关闭状态,目标主机若发送数据,源主机仍要接收。,(3),第三次握手,目标主机发送“,FIN=1,,,ACK=1,,,seq=w,,,ack= u+1”,给源主机,表示目标主机已经没有要向源主机发送的数据。,(4),第四次握手,源主机发送“,ACK=1,,,seq=u+1,,,ack=w+1”,给目标主机,表示收到连接释放报文段。,2.1.4 IPv4,与,IPv6,IPv4,是第一个被广泛使用的,IP,协议版本,也是到目前为止互联网设备和应用采用的最主要协议。按照,TCP/IP,协议,每个连接在互联网上的主机都应该有一个唯一的地址,将以这个地址作为该主机的标志,即,IP,地址。为了方便使用,人们把这,32,位地址分为,4,段,每段,8,位,用十进制数字表示,每段数字范围为,0,255,,段与段之间用句点隔开。比如,上面的,IP,地址可以表示为,10.0.0.1,。,在实际中,数量众多的主机不是各自独立地接入互联网的,数量不一的主机先是组成一个相对独立的网络,称,IP,子网,然后再通过统一的网关设备,(,主要是路由器,),接入互联网。大的子网下又可以分更小的子网。与互联网这一网络结构相对应,,32,位的,IP,地址由两部分组成,一部分为网络地址,也就是该子网的编号;另一部分为主机地址,代表主机在该子网中的编号。为了便于,IP,地址的分配和使用,管理机构又把,IPv4,的,IP,地址分为,A,、,B,、,C,、,D,、,E,共,5,类,其中,A,、,B,、,C,三类由,NIC,在全球范围内统一分配,,D,、,E,类为特殊地址。一个,A,类地址第一个字节为网络地址,后三个字节为主机地址;一个,B,类地址的前两个字节为网络地址,后两个字节为主机地址;一个,C,类地址的前三个字节为网络地址,最后一个字节为主机地址。,随着互联网规模的不断扩大,主机数量呈指数增加,,IPv4,协议提供的地址面临枯竭。而移动终端的互联网化和物联网的成长,对,IP,地址的需求更加巨大。为了克服这一困难,,IPv6,加快了部署的步伐。,IPv6,是用于替代现行版本,IPv4,的,IP,协议的第六个版本,与,IPv4,相比,,IPv6,具有以下几个优势:,(1) IPv6,具有更大的地址空间。,IPv4,中规定,IP,地址长度为,32,,即有,232,个地址;而,IPv6,中,IP,地址的长度为,128,,即有,2128,个地址。,(2) IPv6,使用更小的路由表。,IPv6,的地址分配一开始就遵循聚类原则,这使得路由器能在路由表中用一条记录表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。,(3) IPv6,增加了增强的组播支持以及对流的控制。这使得网络上的多媒体应用有了长足发展的机会,为服务质量控制提供了良好的网络平台。,(4) IPv6,加入了对自动配置的支持。这是对,DHCP,协议的改进和扩展,使得网络的管理更加方便和快捷。,(5) IPv6,具有更高的安全性。在使用,IPv6,网络中用户可以对网络层的数据进行加密并对,IP,报文进行校验,极大地增强了网络的安全性。 我国互联网规模庞大,而申请到的,IP,地址总数相对较少,,IP,地址紧缺的矛盾尤其尖锐。因此,在,IPv6,的推动方面,我国一直走在前面。目前,我国,IPv6,网络的试点工作已经展开,很多新建的网络已经可以同时支持,IPv4,和,IPv6,。,2.1.5 C/S,模式与,B/S,模式,互联网最大的特点是通过网络实现了全世界范围信息的共享。信息共享主要通过,B/S,模式或者,C/S,模式实现,而目前,B/S,模式的使用最为普遍。,1,C/S,模式,C/S,是,Client/Server,的缩写,即客户,/,服务器模式。在客户,/,服务器模式中,服务器是网络信息资源和计算的核心,而客户机是网络资源的消费者,客户机通过服务器获得所需要的网络信息资源。这里客户和服务器都是指通信中所涉及的进程,即是运行着的客户,软件,和服务器,软件,,使用计算机的人是计算机的“用户”,而不是这里所指的“客户”。但在国内外很多技术文献中,也经常把运行服务器程序的机器称为服务器,实际中要根据上下文的内容进行区分。,C/S,模型的工作过程如图,2-7,所示。其工作过程如下:,(1),首先,服务器进程启动起来以后,就一直在监听某一,TCP,端口,比如,FTP,默认为,21,端口,,Web,默认为,80,端口,接收这一端口的请求信息。,(2),如果某个客户,如客户甲,需要查询某个学生的个人信息时,它就向服务器发出请求,(a),,告知这个学生的编号及要查询信息的内容。,(3),服务器进程监听到这一请求后,启动一个线程,该线程从关联的数据库、文件等资源库中搜索到该学生的信息,经过相关处理后,把结果返回客户甲,(b),。,(4),如果客户乙、客户丙也需要查询某个学生的个人信息,那么服务器则分别启动另外两个线程,处理两个客户的请求。,(5),依次类推,如果有,N,个客户请求,服务器进程就启动,N,个线程处理客户的请求。由于计算机的,CPU,和内存等资源是有限的,因此,,N,的大小是受到限制的。一般把,N,叫做该服务器能够处理的最大并发用户数。,C/S,是一种软件系统体系结构,通过它可以充分利用服务器端和客户端两方的硬件资源,将任务合理分配到两端,降低了系统的通信开销。,图,2-7 C/S,模型示意图,2,B/S,模式,B/S(Browser/Server,,即浏览器,/,服务器,),是一种特殊的,C/S,,它是在普通,C/S,的基础上,对服务器端和客户端都进行了改造和规范。客户端就是我们熟知的,Web,浏览器,如,IE,、,Firefox,和,Opera,等;服务器如,IIS,、,Apache,等。任何一种,Web,浏览器可以完全访问任何一种服务器。这种模式统一了客户端,将系统核心功能的实现集中到服务器上,简化了系统的开发、维护和使用。,在技术文献中,人们经常把,C/S,结构和,B/S,结构并列起来,似乎,B/S,结构和,C/S,结构分属不同的两种结构,这样显然是不准确的。但是由于人们经常这样说以至于成为业界习惯,因而当出现这样的说法时,我们应该把,C/S,理解为除,B/S,结构外其余的,C/S,结构。在,B/S,模式下,服务器软件启动后,其进程就长驻内存中,一刻也不停地监听设定的,TCP,端口,一般是,80,端口或者,8080,端口。一旦有向该端口发出的要求获得网页的请求,服务器进程就从本地文件目录或相关资源库中读取,HTML,网页文件,发送给请求者。大部分浏览器也支持许多,HTML,以外的文件格式,如,JPEG,、,PNG,和,GIF,图像格式,还可以利用插件来支持更多文件类型。这样,网页设计者便可以把图像、动画、视频、声音和流媒体包含在网页中,或让人们透过网页而取得它们。,浏览器和服务器之间的通信采用,HTTP(Hyper Text Transport Protocol,,超文本传送协议,),,当需要更高的安全性时,需要采用,HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer),。,HTTPS,是,HTTP,的安全版本,它在,HTTP,下加入,SSL,层,支持对文件内容的加密,但,HTTPS,存在不同于,HTTP,的默认端口。,3,B/S,模式与,C/S,模式的优劣势比较,(1) B/S,模式比,C/S,模式维护和升级更简单。在,C/S,模式下,软件系统的维护包括服务器软件和每一个客户端。由于每个客户端都由不同的人员使用,不仅计算机里面一般会有各种其他的应用软件,而且由于使用者的原因,经常会被病毒、流氓软件等侵入,影响客户端软件的运行。而客户端软件因为是专用的,都需要专门维护,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,因而维护工作量很大。另一方面,实际使用的软件系统经常需要改进和升级,频繁的升级也成为,C/S,模式软件一项不堪重负的工作。而,B/S,模式则明显体现着更为方便的特性,只需要对服务器软件进行修改和升级,所有的客户端,只是通用浏览器,不需要做任何的维护。因此无论用户的规模有多大或有多少分支机构,都不会增加任何维护升级的工作量。如果是异地,还可以实现远程升级和共享。“瘦”客户机和“胖”服务器越来越成为业界的主流,这对用户人力、物力、时间和费用的节省可以说是革命性的。,(2) B/S,模式比,C/S,模式成本更低。在,C/S,模式下,软件不具有通用性,无论是服务器端软件还是客户端软件,都需要软件提供商进行全面开发。而在,B/S,模式下,客户端是通用的免费软件,一般无须开发,个别情况下只需要安装一个插件即可;服务器端有成熟的软件如,IIS,和,Apache,等,基本的通信功能和文件管理功能已经非常完善,只需要开发相对简单的网页和,CGI,程序等,因而开发成本要低得多。,(3) B/S,模式服务器负载更重。由于,B/S,模式下绝大多数任务都要服务器端完成,因而服务器端负载较重,一旦服务器发生网络拥塞或者因,CPU,或内存占用过度而瘫痪,将严重影响系统的使用。因此,通常情况下要采取一些措施,如采用双机热备、网络存储服务器、服务器集群等。,(4) B/S,模式客户端不如,C/S,模式功能强大。,B/S,模式下客户端软件采用,Web,浏览器带来的方便性和低成本,在一定程度上是以牺牲了客户端的功能为代价的,尽管在,Web,浏览器上可以运行诸如,Java Script,、,Vb Script,等脚本程序,但这些程序对客户端资源的访问是受到严格限制的,因此很多和硬件以及本地文件系统资源相关的功能并不能实现。,(5) B/S,模式与,C/S,模式在实际中的使用现状。由于上述,B/S,模式与,C/S,模式各自的优劣势特点,绝大多数应用系统采用了,B/S,模式。目前不仅互联网上广泛采用,B/S,模式,而且在绝大多数企业内部网上也采用了,B/S,模式,如公司内部,OA,系统、专用业务管理系统等。但是,由于,B/S,模式在本地资源访问方面的限制,在一些特殊情况下还必须采用,C/S,模式。,2.1.6,手机网页标准,目前,手机网页存在着几个不同的标准,包括,WML,、,XHTML MP,、,HTML5,等,选择合适的标准是手机网站开发必须首先考虑的。,1,HTML,HTML(Hyper Text Markup Language,,超文本标记,语言,),是用于,描述,网页文档的一种标记语言,它通过标记符号来标记要显示的网页中的各个元素。网页,文件,本身是一种文本文件,通过在文本文件中添加标记符,可以告诉,浏览器,如何显示其中的内容,如文字如何处理,画面如何安排,图片如何显示等。,浏览器,按顺序阅读网页,文件,,然后根据标记符解释和显示其标记的内容,对书写出错的标记不指出其错误,且不停止其解释执行过程。,下面是一个简单的,HTML,文件,Test1.html,:,Hello, This is a HTML page!,body,td,th ,font-size: 36px;,color: #900;,font-family: Arial, Helvetica, sans-serif;,Hello, This is a HTML page! ,文件中的“,”,说明该文件的类型是,HTML,,“,”,和“,”,分别表示文件的开始和结束,“,”,和“,”,分别表示文件正文的开始和结束。这些符号就是标记符号,有一定的含义。该文件用,IE,浏览器打开后的显示效果如图,2-8,。,图,2-8 Test1.html,HTML,文档的制作并不复杂,但它的功能强大,能支持不同数据格式的,文件,嵌入,其主要特点是:,(1),简易性。,HTML,的版本升级采用超集方式,即新版本完全包含老版本,因而用老版本编写的网页可以被新版本完全接受,版本升级过程更加方便平滑。,(2),可扩展性。,HTML,的广泛应用带来了增强功能、增加标识符等要求。对此,,HTML,采取子类元素方式,为系统扩展提供了保证。,(3),平台无关性。虽然计算机种类很多,如,PC,机、服务器、笔记本、,iPad,、智能手机,还有不同形态的嵌入式设备等,但,HTML,都可以在这些平台上运行。,(4) HTML,支持以,Java Script,、,Vb Script,为代表的动态网页生成技术,丰富了网页的功能。今天,对互联网的成功因素进行总结,那就是,TCP/IP,和,HTML,。,TCP/IP,奠定了互联网扩展到全世界的网络技术基础,,HTML,提供了把互联网信息传送且展示给几十亿互联网用户的最好手段。随着,3G,技术的普及,基于,HTML,升级版本的手机网页正迅速替代,WML,网页成为手机网页的主流。,2,WML,最早的手机网站采用,WAP(Wireless Application Protocol),协议,网页设计则采用,WML(Wireless Markup Language),。,WML,即无线标记语言,移动设备中内置的微型浏览器能够解释这种标记语言。虽然它和,HTML,语言很相像,但,WML,其实是,XML,的一个应用子集。,XML,可用于标记电子文件使其具有结构性的标记语言,也可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。,XML,与,Access,、,Oracle,和,SQL Server,等数据库不同,数据库提供了更强有力的,数据存储,和分析能力,如数据索引、排序、查找、相关一致性等,而,XML,仅仅是存储数据。事实上,XML,与其他数据表现形式最大的不同在于它极其简单。这看上去是一个很小的优点,但正是这点却使,XML,与众不同。,XML,与,HTML,的设计区别在于,XML,的核心是数据,其重点是数据的内容,而设计的,HTML,被用来显示数据,其重点是数据的显示。,XML,和,HTML,在语法上面也有区别,,HTML,的标记不是所有的都需要成对出现,,XML,则要求所有的标记必须成对出现;,HTML,标记不区分大小写,,XML,则对大小写敏感,即需要区分大小写。,XML,简单的特点使其易于在任何应用,程序,中读写数据,这使,XML,很快成为数据交换的唯一公共语言,虽然不同的,应用软件,也支持其他的数据交换格式,但不久之后它们都将支持,XML,,这就意味着程序可以更容易地与,Windows,、,Mac OS,、,Linux,以及其他平台下产生的信息结合,然后可以很容易加载,XML,数据到程序中来分析它,并以,XML,格式输出结果。,3,XHTML,XHTML(The Extensible HyperText Markup Language,,可扩展标识语言,),的出现是,HTML,不断演进的结果。随着,Web,的日渐普及,,HTML,用户要求能控制页面的观感,为此,浏览器厂商在,HTML2,和,HTML 3,中推出了新的特性。这些新特性在带来美感的同时,也使网页变得难以理解,复杂的嵌套表结构成为控制页面布局的主要手段,其中还充斥着大量,font,标记和,color,声明。,为解决这个问题,浏览器厂商又推出了,HTML4,。它将表示逻辑的工作推给了,CSS,,为高级内容定位引入了层,(div),的功能。与,HTML3,相比,意味着代码的编写模式发生了变化。为了简化迁移过程,开发人员又通过,HTML4,的,Transitional,版本来支持旧的,HTML3,结构,适用于高级用户的,Strict,版本则要求将内容和表示彻底分开。,这时,,W3C,提出了,XHTM1,作为符合结构良好而有效的,HTML4,的,XML,版本。对于,XML,用户来说,这简化了将,XML,内容转化成网页并用已有验证程序检查转换结果的工作。于是,,XHTML1.1,尝试将不同的问题隔离到不同的模块中,这种模块化方法便于针对不同的需要使用标准的不同部分,也有利于适用新的功能扩展标准。,XML,虽然数据转换能力强大,可以完全替代,HTML,,但面对成千上万已有的站点,直接采用,XML,还为时过早。因此,开发人员在,HTML4.0,的基础上,用,XML,的规则对其进行了扩展,得到了,XHTML,。从某种意义上讲,建立,XHTML,的目的就是实现,HTML,向,XML,的过渡。,与,HTML4,相比,,XHTML1.1,把内容和表示相分离,但是和过去一样,一些实际问题只能使用,CSS,中技巧来解决。例如:无序列表表示的菜单结构通常包括漂亮的图片,但图像不大容易通过文本,语音设施读给有视觉障碍的人听,而且像,Lynx,这样的文本浏览器也不能显示图像。一个复杂的,CSS,技巧可以在浏览器中隐藏文本显示图像。但是如果不同页面上的菜单不同,就很难用,CSS,指定这部分内容了。,XHTML2,进一步把内容和表示相互分离,改进了,HTML4,和,XHTML1,中残留的瑕疵。如将,imgsrc,标记换成了可用于任何元素的可选属性,src,。修改后的,CSS,完全脱离了内容,不支持图像的设备很容易转而表示文本。还用,xforms,模块替换了,html,的,forms,,其中,,xforms,不需要一行脚本就能指定交互逻辑、验证规则和计算方法。此外,这种技术采用了丰富的,XML,结构而不是键值对,允许出现嵌套的子表单和重复的元素。除了能提供一个强大的引擎外,文本,语音设备更适合改变应用程序的丰富性。,XHTML Mobile Profile,是,WAP,论坛为,WAP2.0,所定义的内容编写语言,它是为不支持,XHTML,的全部特性且资源有限的,Web,客户端所设计的。,XHTML Mobile Profile,以,XHTML Basic,为基础,加入了一些来自,XHTML1.0,的元素和属性。这些内容事实上包括了一些其他表示元素和对内部样式表的支持。和,XHTML Basic,一样,,XHTML Mobile Profile,是严格的,XHTML 1.0,子集。,随着移动互联网的发展和手机终端的更新换代,越来越多的手机终端已经支持,XHTML,,,XHTML,逐步成为手机网站开发的首选描述语言。但仍有一些用户使用的低端手机尚不支持,XHTML,。由于这小部分影响范围很小,对于手机网站的开发,建议采用,XHTML,做为主流模板语言,如果仍需要照顾部分低端手机市场,可以再开发一套,WML,模板,通过手机终端适配识别出手机终端类型后进行逐个调用。,4,HTML5,HTML5,是,W3C,之外一些重要,Web,开发人员和主流浏览器厂商,因为不同意,XHTML2,的方向而设计的。,2004,年,他们成立了一个独立的工作组,为新的,HTML,版本提出了一种新的设计方向,并以网页超文本技术工作小组,(WHATWG),的名义推出了,HTML5,。,HTML5,在诞生之后确立了一个原则,那就是所有的技术必须是开放的,不准有专利限制。在这期间,,Opera,捐献了,CSS,技术,,Google,提供了视频格式,WebM,。目前,大部分,HTML,协议在众多网络技术公司中达成共识,但在视频格式方面,世界各大互联网公司正在为具体标准进行争论。纷争的两大阵营分别是以,Opera,、火狐、,Google,等为代表的一方,另一方则由苹果公司领衔。,而按照争论的视频格式来分,前者可以分为,WebM,阵营,后者则可以看做,MPEG,阵营。,WebM,阵营认为,MPEG,格式目前是具有专利保护的,这违背了,HTML5,所有技术必须开放的原则。,MPEG,阵营则更多地是因为自身目前就在使用这种视频格式。,HTML5,和,HTML4,的相似性远远超过,XHTML2,和,XHTML1,的相似性。,HTML5,有以下特点:迁移路径更加平坦,有经验的,HTML4,开发人员熟悉新版本也更方便;新特性遵循相似的逻辑;特定元素的专门事件属性允许,HTML,编辑人员提供更适当的文本完成功能;,HTML5,的基本设计理念利用了,Web,开发人员需要的特性扩展,HTML4,。,HTML5,在继承,HTML4,基本技术的同时进行了简化。,到目前为止,,HTML5,和,XHTML2,都还不是正式的推荐标准,将来一些细微的地方还可能变化,但它们的发展方向不会变,两者都解决了现行标准存在的一些不足。未来的浏览器如何增加对这两种新标准的支持还有待观察。当前,浏览器普遍同时支持,HTML4,和,XHTML1,,但已经有越来越多的,PC,浏览器和手机浏览器开始支持,HTML5,,,HTML5,丰富的功能使得目前已经掀起了一个,HTML5,热潮,手机网页开发者转向,HTML5,正成为时尚。,HTML5,是近十年来,Web,开发标准最巨大的飞跃。和以前的版本不同,,HTML5,不仅大幅提升,Web,应用在交互、系统能力调用、多媒体、语义化等方面的能力,而且也将,Web,带入一个成熟的应用平台。在,HTML5,平台上,视频、音频、图像、动画以及同电脑的交互都被标准化。用户无需安装纷繁的插件就可以获得更为丰富的,Web,应用。,HTML5,技术族主要包括,HTML5,、,CSS3,、,Java Script,、,Web Application API,、,SVG,等,它们具有以下的新特性:,(1),丰富的结构化、语义化标签。,HTML5,新增加了一些结构化标签,主要包括“,”,、“,”,、“,”,、“,”,、“,”,、“,”,、“,”,等,这些标签使网页结构更加简洁和严谨。新标签语义化更强,便于开发者理解和灵活使用,也利于计算机对语义化的,Web,应用进行理解、索引和利用。,(2),面向应用的功能增强。,HTML5,面向移动应用功能不断进行增强,包括多线程并发、离线数据缓存、数据存储、跨域资源共享等。其中,,WebWorkers,标准弥补了,Web,应用以往只能单线程运行的短板,使其不但能够支持多线程的,Web,操作,并能将资源消耗较大的操作放到后台执行,,从而提高,Web,应用的响应速度,降低终端资源消耗。,Offline App Cache,能够将,Web,应用相关的资源文件缓存到本地,使用户在离线状态下也能使用,Web,应用,为开发离线的移动,Web,应用奠定了基础。,Web Storage,规范为简单的网页数据存储提供了,LocalStorage,和,SessionStorage,两个基本方法,,LocalStorage,可将数据永久保存在本地,,SessionStorage,可在浏览器会话保持期间保存数据。,IndexedDB,是,HTML5,另一种数据存储方式,能够帮助,Web,应用存储复杂结构的数据。,Cross-Origin Resource Sharing,使,Web,应用突破了以往无法跨域名访问其他,Web,应用的限制,增强了,Web,应用服务之间的交互能力。,(3),系统能力调用。,HTML5,纳入,W3C DAP,工作组制定的一系列设备,API,,极大提升了,Web,应用对终端设备能力的访问和调用能力,这些设备主要包括终端系统信息,API,、日历,API,、通信录,API,、触摸,API,、通讯,API,、多媒体捕捉,API,等。 同时,,W3C,还制定了位置,API,和视频通信,API,。位置,API,标准使基于位置的,Web,应用能够访问所持设备的地理位置信息。位置,API,与底层位置信息源无关,它的来源可包括,GPS,、从网络信号,(,如,IP,地址、,WiFi,、基站号等,),推测的位置,以及用户输入位置。视频通信,API,通过,API,接口提供视频会议核心技术能力,包括音视频采集、编解码、网络传输、显示等,它能使浏览器直接进行实时视频和音频通信。,(4),富媒体支持。,HTML5,技术极大增强了,Web,应用在绘图、音视频、字体、数学公式、表单等方面的能力。,Canvas,特性能提供,2D,、,3D,图片的移动、旋转、缩放等常规操作以及强大的绘图渲染能力。,SVG,基于,XML,来描述二维矢量图形,可根据用户的需求进行无失真缩放,适合移动设备图片显示。,HTML5,标准增加了音视频标签“,”,、“,”,,可在网页中直接播放音频、视频文件,以取代,Adobe Flash,、微软,Silverlight,、,QuickTime,等多媒体插件及私有协议。,WOFF,能通过样式库为,Web,应用中自动提供各种字体,并且能根据实际需要调整字体的大小。,MathML,可使用户能够在网页文本中直接输入复杂的数学公式符号。,(5),连接特性。,Web Sockets,允许在,Web,应用前端与后端之间通过指定的端口打开一个持久连接,这极大地提高了,Web,应用的效率,使得基于页面的实时聊天、更快速的网页游戏体验、更优化的在线交流得到了实现。同时,,HTML5,拥有更有效的服务器推送技术,使得基于推送技术的应用更容易实现。,HTML5,技术的卓越性能和良好前景,促使全球科技巨头都积极布局。,Facebook,、亚马逊等互联网巨头均采用,HTML5,改造应用服务,并同时支持原生移动客户端与,HTML5 Web,版本。据工信部电信研究院预计,,2012,年全球主流网站支持,HTML5,的比例可能超过,50%,,视频网站支持比例将超过,90%,。苹果、谷歌、微软、,Mozilla,、,Opera,等巨头也均大力提升了其终端或浏览器产品对,HTML5,的支持程度。据,Strategy Analytics,预测,全球支持,HTML5,的移动智能终端将由,2011,年的,3.36,亿部增长到,2013,年的,10,亿部。,2.2,移动通信技术,2.2.1,移动通信技术概况,移动通信技术实现了人们在任何时间、任何地点与任何个人进行通信的愿望。在短短的二三十年间,移动通信实现了从传统的单基站大功率系统到蜂窝移动
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!