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

网站设计首页动态效果怎么做宝安建网站公司

网站设计首页动态效果怎么做,宝安建网站公司,js代码放wordpress哪里,网站用vps做dns1.1. Socket简介 套接字#xff08;socket#xff09;是一种通信机制#xff0c;凭借这种机制#xff0c; 客户端-服务器 模型的通信方式既可以在本地设备上进行#xff0c;也可以跨网络进行。 Socket英文原意是“孔”或者“插座”的意思#xff0c;在网络编程… 1.1. Socket简介 套接字socket是一种通信机制凭借这种机制 客户端-服务器 模型的通信方式既可以在本地设备上进行也可以跨网络进行。 Socket英文原意是“孔”或者“插座”的意思在网络编程中通常将其称之为“套接字”当前网络中的主流程序设计都是使用Socket进行编程的因为它简单易用它还是一个标准BSD Socket能在不同平台很方便移植比如你的一个应用程序是基于Socket编程的那么它可以移植到任何实现BSD Socket标准的平台比如LwIP它兼容BSD Socket又比如Windows它也实现了一套基于Socket的套接字接口更甚至在国产操作系统中如RT-Thread它也实现了BSD Socket标准的Socket接口。 在Socket中它使用一个套接字来记录网络的一个连接套接字是一个整数就像我们操作文件一样利用一个文件描述符可以对它打开、读、写、关闭等操作类似的在网络中我们也可以对Socket套接字进行这样子的操作比如开启一个网络的连接、读取连接主机发送来的数据、向连接的主机发送数据、终止连接等操作。 Linux系统中的套接字相关的函数注意要包含网络编程中常用的头文件 #include sys/types.h #include sys/socket.h 1.2. socket() 函数原型 int socket(int domain, int type, int protocol); socket()函数用于创建一个socket描述符socket descriptor它唯一标识一个socket这个socket描述字跟文件描述字一样后续的操作都有用到它把它作为参数通过它来进行一些读写操作。 创建socket的时候也可以指定不同的参数创建不同的socket描述符socket函数的三个参数分别为1. domain参数domain表示该套接字使用的协议族在Linux系统中支持多种协议族对于TCP/IP协议来说选择AF_INET就足以当然如果你的IP协议的版本支持IPv6那么可以选择AF_INET6可选的协议族具体见 AF_UNIX, AF_LOCAL 本地通信AF_INET IPv4 AF_INET6 IPv6 AF_IPX IPX - Novell 协议 AF_NETLINK 内核用户界面设备 AF_X25 ITU-T X.25 / ISO-8208 协议 AF_AX25 业余无线电 AX.25 协议 AF_ATMPVC 访问原始ATM PVC AF_APPLETALK AppleTalk AF_PACKET 底层数据包接口 AF_ALG 内核加密API的AF_ALG接口 2. type参数type指定了套接字使用的服务类型 可能的类型有以下几种 SOCK_STREAM提供可靠的即能保证数据正确传送到对方面向连接的Socket服务多用于资料如文件传输如TCP协议。 SOCK_DGRAM是提供无保障的面向消息的Socket 服务主要用于在网络上发广播信息如UDP协议提供无连接不可靠的数据报交付服务。 SOCK_SEQPACKET为固定最大长度的数据报提供有序的可靠的基于双向连接的数据传输路径。 SOCK_RAW表示原始套接字它允许应用程序访问网络层的原始数据包这个套接字用得比较少暂时不用理会它。 SOCK_RDM提供不保证排序的可靠数据报层。 3. protocol参数protocol指定了套接字使用的协议在IPv4中只有TCP协议提供SOCK_STREAM这种可靠的服务只有UDP协议提供SOCK_DGRAM 服务对于这两种协议protocol的值均为0因为当protocol为0时会自动选择type类型对应的默认协议。 当创建套接字成功的时候该函数返回一个int类型的值也就是socket描述符该值大于等于0而如果创建套接字失败时则返回-1。 1.3. bind() 函数原型 int bind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen); 在套接口中一个套接字只是用户程序与内核交互信息的枢纽它自身没有太多的信息也没有网络协议地址和端口号等信息在进行网络通信的时候必须把一个套接字与一个IP地址或端口号相关联这个过程就是绑定的过程。 bind()函数用于将一个 IP 地址或端口号与一个套接字进行绑定许多时候内核会帮我们自动绑定一个IP地址与端口号然而有时用户可能需要自己来完成这个绑定的过程以满足实际应用的需要最典型的情况是一个服务器进程需要绑定一个众所周知的地址和端口以等待客户来连接作为服务器端这一步绑定的操作是必要的而作为客户端则不是必要的因为内核会帮我们自动选择合适的IP地址与端口号。 psbind()函数并不是总是需要调用的只有用户进程想与一个具体的地址或端口相关联的时候才需要调用这个函数。如果用户进程没有这个需要那么程序可以依赖内核的自动的选址机制来完成自动地址选择。 参数 sockfdsockfd是由socket()函数返回的套接字描述符。my_addrmy_addr是一个指向套接字地址结构的指针。addrlenaddrlen指定了以addr所指向的地址结构体的字节长度。 若bind()函数绑定成功则返回0若出错则为-1。 sockaddr 结构内容如下 sockaddr结构 struct sockaddr {sa_family_t sa_family;char sa_data[14]; } 咋一看这个结构体好像没啥信息要我们填写的确实也是这样子我们需要填写的IP地址与端口号等信息都在sa_data连续的14字节信息里面但这个结构对用户操作不友好一般我们在使用的时候都会使用sockaddr_in结构sockaddr_in和sockaddr是并列的结构占用的空间是一样的指向sockaddr_in的结构体的指针也可以指向sockadd的结构体并代替它而且sockaddr_in结构对用户将更加友好在使用的时候进行类型转换就可以了。 sockaddr_in结构 struct sockaddr_in {short int sin_family; /* 协议族 */unsigned short int sin_port; /* 端口号 */struct in_addr sin_addr; /* IP地址 */unsigned char sin_zero[8]; /* sin_zero是为了让sockaddr与sockaddr_in两个数据结构保持大小相同而保留的空字节 */ }; 这个结构体的第一个字段是与sockaddr结构体是一致的而剩下的字段就是sa_data连续的14字节信息里面的内容只不过从新定义了成员变量而已sin_port字段是我们需要填写的端口号信息sin_addr字段是我们需要填写的IP地址信息剩下sin_zero 区域的8字节保留未用。 举个简单的使用实例 struct sockaddr_in server;bzero(server, sizeof(server));// assign IP, PORT server.sin_family AF_INET; server.sin_addr.s_addr htonl(INADDR_ANY); server.sin_port htons(6666);// binding newly created socket to given IP and verification bind(sockfd, (struct sockaddr*)server, sizeof(server)); 参考资料 1.【野火】《i.MX Linux开发实战指南》
http://www.hkea.cn/news/14321352/

相关文章:

  • 安康网站建设小程序国家高新技术企业认定官网
  • 权威发布信息网站优化的优势
  • 大学生创新产品设计作品网站推广和网站优化
  • 建设安全网站的目的中山建设网站的公司
  • 网站建设售后服务安全维护wordpress的live2D
  • 营销型网站策划方案湛江网站建设与网页
  • 设计企业的网站深圳市住房和建设局网站住房保障
  • 网站建设备案是什么云南建设注册考试中心网站
  • 手机模板网站模板免费下载房屋设计软件有哪些
  • 蚌埠市做网站企业网站管理
  • 电商网站建设开发的语言有哪些中国亚马逊网站建设
  • 网站ip和pv手机网页设计网站建设
  • 聊城做网站公司做网站那个语言好
  • 网站开发环境有哪些php专业展馆展厅设计
  • 规范门户网站建设今天建设银行网站无法登录
  • html特效网站哪家卖的wordpress主题好
  • 网站标题 关键字wordpress实现mp4播放
  • 网站建设2017国内排行百度蜘蛛对视频网站的抓取
  • 什么网站做网页好wordpress 主机推荐
  • 哪个网站做漂流瓶任务页面设计重要性
  • 淄博抖音推广公司网络seo优化推广
  • 12306网站是是阿里巴巴做的吗甘肃省住房与城乡建设部网站
  • 安徽网站优化价格咨询wordpress社区聊天室
  • 泰州市建设局审图中心网站花卉电子商务网站开发
  • 手机网站地址会议网站定制
  • 数码电子产品网站建设策划书石家庄网站建设
  • app网站开发框架wordpress媒体库上传电影
  • 用阿里云服务器做盗版小说网站吗莱芜网站
  • iis 网站正在建设中百度账号登录个人中心
  • 做网站客户要求分期淮安 做网站 app