- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.2.2 socket的基本函数 进行socket编程的基本函数有socket、bind、listen、accept、send、sendto、recv、recvfrom这几个,其中对于客户端和服务器端以及TCP和UDP的操作流程都有所区别,这里先对每个函数进行一定的说明,再给出不同情况下使用的流程图。 4.2.2 socket的基本函数 socket:该函数用于建立一个socket连接,可指定socket类型等信息。在建立了socket连接之后,可对socketadd或sockaddr_in进行初始化,以保存所建立的socket信息。 bind:该函数是用于将本地IP地址绑定端口号的,若绑定其他地址则不能成功。另外,它主要用于TCP的连接,而在UDP的连接中则无必要。 connect:该函数在TCP中是用于bind的之后的client端,用于与服务器端建立连接,而在UDP中由于没有了bind函数,因此用connect有点类似bind函数的作用。 send和recv:这两个函数用于接收和发送数据,可以用在TCP中,也可以用在UDP中。当用在UDP时,可以在connect函数建立连接之后再用。 sendto和recvfrom:这两个函数的作用与send和recv函数类型,也可以用在TCP和UDP中。当用在TCP时,后面的几个与地址有关参数不起作用,函数作用等同于send和recv;当用在UDP时,可以用在之前没有使用connect的情况时,这两个函数可以自动寻找制定地址并进行连接。 4.2.2 socket的基本函数 4.2.2 socket的基本函数 4.2.2 socket的基本函数 (2)函数格式 4.2.2 socket的基本函数 * * 第4章 嵌入式Linux网络编程 第4章 嵌入式Linux网络编程 本章将介绍嵌入式Linux网络编程的基础知识。由于网络在嵌入式应用系统中的应用非常广泛,基本上常见的应用都会与网络有关,因此,掌握这一部分的内容是非常重要的。经过本章的学习,读者将会掌握 TCP/IP协议的基础知识、嵌入式 Linux网络编程方法、能够独立编写客户端、服务器端的通信程序。 4.1 TCP/IP协议概述 一个完整的网络需要一系列网络协议构成一套完整的网络协议集,大多数网络在设计时,是将网络划分为若干个相互联系而又各自独立的层次,然后针对每个层次及每个层次间的关系制定相应的协议。这样可以减少协议设计的复杂性。像这样的计算机网络层次结构模型及各层协议的集合称为计算机网络体系结构。网络技术在发展过程中曾出现过多种网络体系结构,没有统一的网络体系结构标准,不能适应信息社会日益发展的需要。若要实现更大范围的信息交换与共享,把不同体系结构的计算机网络互联起来将十分困难。因而计算机网络的发展在客观上提出了网络体系结构标准化的需求。 在此背景下,国际标准化组织ISO(International Standards Organization)在1979年正式颁布了一个称为开放系统互联基本参考模型OSI/RM(Open Systems Interconnection/ Reference Module)的国际网络体系结构标准,这是一个定义连接异构计算机的标准体系结构。 4.1.1 OSI参考模型与TCP/IP参考模型 OSI 协议参考模型,它是基于国际标准化组织(ISO)的建议发展起来的,从上到下共分为7层:应用层、表示层、会话层、传输层、网络层、数据链路层及物理层。这个7层的协议模型虽然规定得非常细致和完善,但在实际中却得不到广泛的应用,其重要的原因之一就在于它过于复杂。但它仍是此后很多协议模型的基础,这种分层架构的思想在很多领域都得到了广泛的应用。 与此相区别的TCP/IP协议模型从一开始就遵循简单明确的设计思路,它将TCP/IP的7层协议模型简化为4层,从而更有利于实现和使用。TCP/IP的协议参考模型和OSI协议参考模型的对应关系如下图4.1所示。 4.1.1 OSI参考模型与TCP/IP参考模型 图4.1 OSI模型和TCP/IP参考模型对应关系 4.1.2 TCP/IP协议族 图4.2 TCP/IP协议族 4.1.2 TCP/IP协议族 ARP:用于获得同一物理网络中的硬件主机地址。 MPLS:多协议标签协议,是很有发展前景的下一代网络协议。 IP:负责在主机和网络之间寻址和路由数据包。 ICMP:用于发送报告有关数据包的传送错误的协议。 IGMP:被IP主机用来向本地多路广播路由器报告主机组成员的协议。 TCP:为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适用于要求得到响应的应用程序。 UDP:提供了无连接通信,且不对传送包进行可靠的保证。适
文档评论(0)