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

用什么系统程序做评测网站建设银行住房公积金卡网站

用什么系统程序做评测网站,建设银行住房公积金卡网站,社群营销,石家庄网站建设推广报价目录 一、套接字的地址结构 1.1 通用socket地址结构 1.2 专用socket地址结构 1.2.1 tcp协议族 1.2.3 IP协议族 二、IP地址转换函数 三、网络编程接口 3.1 socket() 3.2 bind() 3.3 listen() 3.4 accept() 3.5 connect() 3.6 close() 3.7 recv()、send() 3.8 recv…目录 一、套接字的地址结构 1.1 通用socket地址结构 1.2 专用socket地址结构 1.2.1 tcp协议族 1.2.3 IP协议族 二、IP地址转换函数 三、网络编程接口 3.1 socket() 3.2 bind() 3.3 listen() 3.4 accept() 3.5 connect() 3.6 close() 3.7 recv()、send() 3.8 recvfrom()、sento() 一、套接字的地址结构 我们前面所讨论的IPC机制都依靠一台计算机系统的共享资源实现,这里的资源可以是文件系统空间,共享的物理内存或者消息队列,但只有运行在同一台机器上的进程才能使用它们. 一台机器上的进程可以使用套接字和另外一台机器上的进程通信,这样就可以支持分布在网络中的客户/服务器系统. 同一台机器上的进程之间也可以使用套接字进行通信, 套接字的特性由3个属性确定,它们是:域(domain),类型(type)和协议(protocol). 套接字用地址作为它的名字,地址的格式随域(又被称为协议族,protocol family)的不同而不同,每个协议族又可以使用一个或多个地址族来定义地址格式, 1.1 通用socket地址结构 socket 网络编程接口中表示 socket 地址的是结构体 sockaddr其定义如下: #include bits/socket.h struct sockaddr {sa_family_t sa_family;//协议族char sa_data[14];//数据,没有给出IP地址,就是给了这么一块儿空间,起了一个占位的作用。 }; sa_familvy 成员是地址族类型(sa_family_t)的变量。地址族类型通常与协议族类型对应。常见的协议族和对应的地址族如下图所示: 1.2 专用socket地址结构 TCP/IP 协议族有 sockaddr_in 和 sockaddr_in6 两个专用 socket 地址结构体它们分别用于 IPV4 和 IPV6: sin_family:地址族 AF INETsin_port:端口号需要用网络字节序表示sin_addr:IPV4 地址结构:s_addr 以网络字节序表示 IPV4 地址 struct in_addr {u_int32_t s_addr;//无符号的32位的整型,存放IP地址; }; 1.2.1 tcp协议族 tcp协议族主要有三个 地址族端口号IP地址 //tcp协议族 struct sockaddr_in {sa_family_t sin_family;//地址族,就是sin_family:地址族 AF_INETu_int16_t sin_port;//端口,16位的端口struct in_addr sin_addr;//一个结构体,只有一个成员,是无符号的32位的整型,存放IP地址;(IPV4的地址就是32位)//其实后面还有占位的只是我们不用它所以就没有写 }; 1.2.3 IP协议族 //IP协议族 struct in6_addr {unsigned char sa_addr[16];// IPV6 地址要用网络字节序表示 }struct sockaddr_in6 {sa_family_t sin6_family;//地址族:AF_INET6u_inet16_t sin6_port;// 端口号:用网络字节序表示u_int32_t sin6_flowinfo;// 流信息应设置为 0struct in6_addr sin6_addr;// IPV6 地址结构体u_int32_t sin6_scope_id;// scope ID尚处于试验阶段 }; 二、IP地址转换函数 通常人们习惯用点分十进制字符串表示 IPV4 地址但编程中我们需要先把它们转化为整数方能使用下面函数可用于点分十进制字符串表示的IPV4 地址和网络字节序整数表示的 IPV4 地址之间的转换 #include arpa/inet.h in_addr_t inet_addr(const char *cp);//字符串表示的 IPV4 地址转化为网络字节序 char* inet_ntoa(struct in_addr in);// IPV4 地址的网络字节序转化为字符串表示 三、网络编程接口 头文件 #include sys/types.h #include sys/socket.h 3.1 socket() socket()创建套接字成功返回套接字的文件描述符失败返回-1 int socket(int domain, int type, int protocol);domain:设置套接字的协议族AF_UNIX 、AF_INET、 AF_INET6type:设置套接字的服务类型 SOCK_STREAM流式服务、SOCK_DGRAM数据报服务protocol:一般设置为 0表示使用默认协议   3.2 bind() bind()将 sockfd 与一个 socket 地址绑定成功返回 0失败返回-1 int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);sockfd 是网络套接字描述符,(命名套接字,就是上面的函数的返回值作为了我们的参数sockfd)addr 是地址结构addrlen 是 socket 地址的长度 3.3 listen() listen()创建一个监听队列以存储待处理的客户连接成功返回 0失败返回-1 int listen(int sockfd,int backlog); sockfd 是被监听的 socket 套接字back1og 表示处于完全连接状态的 socket 的上限 3.4 accept() accept()从 listen 监听队列中接收一个连接成功返回一个新的连接 socket该 socket 唯一地标识了被接收的这个连接失败返回-1 int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); sockfd 是执行过 listen 系统调用的监听 socketaddr 参数用来获取被接受连接的远端 socket 地址addrlen 指定该 socket 地址的长度 3.5 connect() 客户端需要通过此系统调用来主动与服务器建立连接成功返回 0失败返回-1 int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen); sockfd 参数是由 socket()返回的一个 socketserv_addr 是服务器监听的 socket 地址addrlen 则指定这个地址的长度 3.6 close() 关闭一个连接实际上就是关闭该连接对应的socket int close(int sockfd); 3.7 recv()、send() TCP 数据读写: ssize_t recv(int sockfd, void *buff, size_t len, int flags);ssize_t send(int sockfd, const void *buff, size_t len, int flags); recv()读取 sockfd 上的数据buff 和 len 参数分别指定读缓冲区的位置和大小send()往 socket 上写入数据 buff 和 len 参数分别指定写缓冲区的位置和数据长度flags 参数为数据收发提供了额外的控制 3.8 recvfrom()、sento() UDP 数据读写: recvfrom()读取 sockfd 上的数据 buff 和 len 参数分别指定读缓冲区的位置和大小 ssize_t recvfrom(int sockfd, void *buff, size_t len, int flags.struct sockaddr* src_addr,socklen_t* addrlen); src_addr 记录发送端的 socket 地址addrlen 指定该地址的长度 sendto()往 socket 上写入数据 buff 和 len 参数分别指定写缓冲区的位置和数据长度 ssize_t sendto(int sockfd, void *buff, size_t len, int flags,struct sockaddr* dest_addr,socklen_t addrlen); dest_addr 指定接收数据端的 socket 地址addrlen 指定该地址的长度
http://www.w-s-a.com/news/35884/

相关文章:

  • 营销软件网站wordpress优秀的破解主题
  • 卧龙区网站建设国内漂亮网站欣赏
  • 服装 网站模板 wordpress石家庄做网站的公司有哪些
  • 惠州技术支持网站建设百度怎样注册免费的网站
  • 无锡哪里有做网站的公司泸州网站建设公司
  • 怎么进行网站推广jsp可以做那些小网站
  • 懒人手机网站wordpress修改秒速
  • WordPress资讯网站用花生壳做网站
  • 关于营销方面的网站建设网站怎么克隆
  • 站长网seo综合查询工具电商公司简介
  • 全能网站建设教程广告制作公司需要什么设备
  • 汽车行业做网站网站改版seo建议
  • 建设职业注册中心网站photoshop属于什么软件
  • 公司网站展示有哪些wordpress工单
  • iis新建网站seo是做什么工作的
  • 临沂网站建设厂家做外贸的女生现状
  • 电子商务网站建设实践临沂做网站的
  • 网站职能建设论文做外贸都有哪些网站
  • 网站建设项目需求分析房地产网站源码
  • 网站充值提现公司账务怎么做中国能建设计公司网站
  • 网站信息资源建设包括哪些网站网站做维护
  • 网站性能优化的方法有哪些建设施工合同网站
  • 郑州建设企业网站山西省住房和城乡建设厅网站
  • 做网站的去哪找客户正规制作网站公司
  • 网站代理访问是什么意思外国优秀设计网站
  • 合肥个人建站模板网络技术服务有限公司
  • 做网站什么公司好dw企业网站开发教程
  • 怎么做自己的个人网站宝安网站设计哪家最好
  • 浩博建设集团网站站长网站统计
  • 电商网站开发视频seo排名优化方式方法