当前位置: 首页 > news >正文

百度网站推广工业产品设计名词解释

百度网站推广,工业产品设计名词解释,外贸网站推广平台蓝颜seo牛,手机编程软件哪个好用一、主机字节序列和网络字节序列 主机字节序列分为大端字节序列和小端字节序列,不同的主机采用的字节序列可能不同。大端字节序列是指一个整数的高位字节存储在内存的低地址处,低位字节存储在内存的高地址处。小端字节序列是指整数的高位字节存储在内存…

一、主机字节序列和网络字节序列

主机字节序列分为大端字节序列和小端字节序列,不同的主机采用的字节序列可能不同。大端字节序列是指一个整数的高位字节存储在内存的低地址处,低位字节存储在内存的高地址处。小端字节序列是指整数的高位字节存储在内存的高地址处,低位字节存储在内存的低地址处。在两台使用不同字节序列的主机之间传递数据时,可能会出现冲突。所以,在将数据发送到网络时规定整型数据使用大端字节序列,所以也把大端字节序列称为网络字节序列。对方接收到数据后,可以根据自己的字节序列转换。

Linux系统提供如下4个函数来完成主机字节序列和网络字节序列的转换:

在这里插入图片描述

二、套接字的地址结构

1.通用socket地址结构

socket网络编程接口中表示socket地址的是结构体sockaddr,定义如下:

#include<bits/socket.h>struct sockaddr
{sa_famliy_t sa_family;char sa_data[14];
}

sa_family成员是地址族(sa_famliy_t)类型的变量。地址族类型通常与协议族类型对应。常见的协议族和对应的地址族如下图所示:

在这里插入图片描述

2.专用socket地址结构

TCP/IP协议族有sockaddr_in和sockaddr_in6两个专用的socket地址结构,它们分别用于IPV4和IPV6,一般使用sockaddr_in:

结构体sockaddr_in它用来处理网络通信的地址,是internet环境下套接字的地址形式。
所以在网络编程中我们会对sockaddr_in结构体进行操作,使用sockaddr_in来建立所需的信息,最后使用类型转化就可以了。sockaddr_in用于socket定义和赋值。

struct sockaddr_in
{sa_family_t sin_family;//地址族  AF_INET  u_int16_t sin_port;//端口号,需要用网络字节序表示struct in_addr sin_addr;//IPV4地址结构体
}

该结构体中提到的另一个结构体 in_addr 的定义如下:

struct in_sddr
{u_int32_t s_addr;//以网络字节序列表示IPV4地址
}

它用来表示一个32位的IPv4地址。
in_addr_t 一般为 32位的unsigned int,其字节顺序为网络顺序,即该无符号整数采用大端字节序 。

3.IP地址转换函数

通常,人们习惯用点分十进制字符串表示IPV4地址,但编程中我们需要先把它们转化为整数方能使用,下面函数可用于点分十进制字符串表示的IPV4地址和网络字节序整数表示的IPV4地址之间的转换:

在这里插入图片描述

三、网络编程接口

1.socket()创建套接字

在这里插入图片描述

参数解释:

第一个参数domain:设置套接字的协议簇, AF_UNIX AF_INET AF_INET6。
第二个参数type:设置套接字的服务类型,SOCK_STREAM(流式套接字)、SOCK_DGRAM(数据报格式套接字)。
第三个参数protocol:一般设置为0,表示使用默认协议
返回值:创建成功返回套接字的文件描述符,失败返回-1 。

2.bind()服务端把用于通信的地址和端口绑定到 socket 上在这里插入图片描述

参数解释:

第一个参数sockfd:需要绑定的socket描述符。
第二个参数addr:地址结构,存放了服务端用于通信的地址和端口。
第三个参数addrlen:表示 addr 结构体的大小,即socket地址的长度。
返回值:成功返回0,失败返回-1。

3.listen()创建一个监听队列以存储待处理的客户连接

在这里插入图片描述

参数解释:

第一个参数sockfd:被监听的socket套接字。
第二个参数backlog:表示处于完全连接状态的socket的上限。
返回值:成功返回0,失败返回-1。

4.accept()从listen监听队列中接收一个连接

在这里插入图片描述

参数解释:

第一个参数sockfd:是执行过listen系统调用的监听socket 。
第二个参数addr:参数用来获取被接受连接的远端socket地址。
第三个参数addrlen:指定该socket地址的长度。
返回值:成功返回一个新的连接socket,该socket唯一地标识了被接收的这个连接,失败返回-1 。

5.connect()客户端需要通过此系统调用来主动与服务器建立连接

在这里插入图片描述

参数解释:

第一个参数sockfd:由socket()返回的一个socket。
第二个参数serv_addr:服务器监听的socket地址。
第三个参数addrlen:指定这个地址的长度。
返回值:成功返回0,失败返回-1。

6.recv()读取sockfd上的数据(TCP读取数据)在这里插入图片描述

参数解释:

第一个参数sockfd:已连接stocket的描述符。
第二个参数buff:指定读缓冲区的位置。
第三个参数len:指定读缓冲区的大小。
第四个参数flags:为数据收发提供了额外的控制。

7.send()往socket上写入数据(TCP写入数据)

在这里插入图片描述
参数解释:

第一个参数sockfd:已连接stocket的描述符。
第二个参数buff:指定读缓冲区的位置。
第三个参数len:指定读缓冲区的数据长度。
第四个参数flags:为数据收发提供了额外的控制。

8.close()关闭一个连接

在这里插入图片描述

参数解释:

参数sockfd:关闭该连接对应的socket。

http://www.yayakq.cn/news/12933/

相关文章:

  • 网站模板资源文老师网络规划设计师
  • node.js可以做网站国际新闻头条最新消息
  • 做网站怎么写预算上海网站建设企业
  • 做旅行的网站南通建设厅网站
  • 深圳建设局网站首页app官网
  • 上海网站建设报价表wordpress修改网站地址
  • 南乐网站建设费用国外网站搜索引擎优化方案
  • 网站建设合同需要缴纳印花税软件开发与程序设计有什么不同
  • 海门市住房和城乡建设局网站加强协会网站建设意义
  • 谁有人和兽做的网站哈尔滨市建设网站
  • 海洋网站建设权威的大连网站建设
  • 服务器网站备案joomla与wordpress学哪个好
  • 西安网站建设eliwe苏州推荐网络公司建网站
  • 企业对比网站微盟小程序商城
  • 云南品牌网站开发广东省白云区属于哪个市
  • 自己可以做公司网站吗优化网站排名推荐公司
  • php网站开发师条件什么软件推广效果好
  • 邢台专业做网站费用珠海网站建设哪家权威
  • 建筑类电商网站介绍网站建设规划书结构
  • 网站开发职务苏州哪里做网站好
  • 包装材料东莞网站建设var_dump调试wordpress
  • 蓝色网站素材烘焙食品网站建设需求分析
  • 中国建设银行网站 个人做网站着用什么软件
  • 成都企业网站建设方案西安建设工程交易中心网站
  • js 网站头部固定推广普通话作文
  • 网站建设费 科研 设备费重庆九龙坡营销型网站建设公司哪家好
  • wordpress 非插件七牛cdn全站加速合肥专业做网站的公司
  • 网站建设公司(推荐乐云践新)网站建设百度索引
  • 高端学校网站建设做废钢铁生意在哪个网站了解
  • 文档阅读网站模板下载网站经营性备案条件