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

四川建设厅的网站制作网页网站用的是什么

四川建设厅的网站,制作网页网站用的是什么,wordpress 上传大图,做网站个网站要多少钱文章目录 一、带外数据基本知识二、带外数据的读写三、检测带外数据是否到达3.1、select上的异常事件3.2、SIGURG信号 四、带外标记 一、带外数据基本知识 带外数据(Out Of Band,OOB),用于迅速通告对方本端发生的重要事件&#xf…

文章目录

  • 一、带外数据基本知识
  • 二、带外数据的读写
  • 三、检测带外数据是否到达
    • 3.1、select上的异常事件
    • 3.2、SIGURG信号
  • 四、带外标记


一、带外数据基本知识

  带外数据(Out Of Band,OOB),用于迅速通告对方本端发生的重要事件,所以它比一般数据具有更高的优先级,其传输既可以使用一条独立的传输层连接,也可以映射到传输普通数据的连接中。在实际的应用中,带外数据的使用比较少见,已知的仅有telnet、ftp等远程非活跃程序。
  虽然TCP和UDP中都没有真正的带外数据,但是TCP利用其头部中的紧急指针标志和紧急指针字段来传输紧急数据,给应用程序提供了一种传输紧急数据的方式,这种传输紧急数据的方式与带外数据类似,所以TCP紧急数据也就可以被称为带外数据。
  带外缓存,这个缓存只有1B,用来接收带外数据,根据紧急指针所指的位置确定带外数据的位置。如果上层应用程序没有及时将带外数据从带外缓存中读出,则后续数据将会覆盖它。

二、带外数据的读写

  TCP连接使用MSG_OOB参数在函数send以及recv中实现对带外数据的读写,由于带外缓存只有1B,所以在传输字符串的时候只有最后一个字节会被保存在带外缓存中进行传输。比如在以下程序的接收中,如果客户端依次传输“123”,“abc”,“123”这三次消息:

memset(buffer, '\0'. BUF_SIZE);
ret = recv(connfd, buffer, BUF_SIZE - 1, 0);
printf("got %d bytes of normal data '%s'\n", ret, buffer);
memset(buffer, '\0'. BUF_SIZE);
ret = recv(connfd, buffer, BUF_SIZE - 1, MSG_OOB);
printf("got %d bytes of oob data '%s'\n", ret, buffer);
memset(buffer, '\0'. BUF_SIZE);
ret = recv(connfd, buffer, BUF_SIZE - 1, 0);
printf("got %d bytes of normal data '%s'\n", ret, buffer);

  其结果为

got 5 bytes of normal data '123ab'
got 1 bytes of oob data 'c'
got 3 bytes of normal data '123'

  由此可见,使用MSG_OOB参数对带外数据进行传输,会迫使TCP连接切断数据流,以带外数据为分割点,正常数据’123ab‘和’123‘是不能一起被读出的。
(具体样例在《linux高性能服务器编程》P84-P85》

三、检测带外数据是否到达

3.1、select上的异常事件

  socket上面接收到正常数据和带外数据都将会使select返回,如果接收到正常数据socket将会处于可读状态,如果接受到带外数据,socket将会处于异常状态,通过判断socket的状态即可判断带外数据是否到达。

3.2、SIGURG信号

四、带外标记

  这里我们主要使用sockatmark函数来判断当前的socket是否处于带外标记,即下一个被读取到的数据是否是带外数据。

#include <sys/socket.h>
int sockatmark(int sockfd);

  如果下一个数据是带外数据的话,sockatmark返回1,不是的话返回0.

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

相关文章:

  • 西安免费公司网站设计网站的域名和密码
  • 网站交互图片怎么做什么网站做电脑系统好
  • 商丘专业做网站无人在线观看高清视频8
  • 承接网站建设服务WordPress手动切换主题
  • 网站建设免费教程wordpress美食主题
  • 如何做内部优惠券网站注册1000万公司每年费用多少
  • 网站建设需要具备什么条件怎么做运营推广
  • 建设视频网站需要什么知识江西恒通建设工程有限公司网站
  • 备案名称和网站名称网页设计入门与应用电子书pdf百度网盘
  • 网站建设的一般要素网站首页轮播图片
  • 4399游戏盒下载官方网站深圳龙岗邮编
  • 监控设备公司企业网站源码搭建一个网站花多少钱
  • 邢台做网站哪家公司好智能小程序开发者工具
  • 梅林多丽工业区做网站中国百科网vip钓鱼网站开发
  • 规划网站的总结wordpress幻灯插件
  • 做国外网站需要多少钱商务网站建设与运营
  • 网站板块建设的重要性技术导航源码
  • 网站建设与管理需要什么软件简洁风格的网站模板免费下载
  • 凡科建站的网址微信制作网站公司简介
  • 2008 iis asp配置网站手机网站开发 视频教程
  • 广东做网站优化公司报价帝国cms网站源码
  • 深圳网站域名注册鲜花网网站开发的意义
  • angular适合 做 网站吗建筑资质最新政策2023年
  • 中英文切换网站模板.net如何做直播网站
  • 网站管理制度规范电子商务网站设计模板
  • 做外贸自己做网站么市场营销方案500字
  • 建设网站多少费用电商建站工具
  • 网站建设那个公司好谷歌google官网入口
  • 宁波大型网站建设wordpress转成繁体
  • 乌镇网站建设标书wordpress怎么画表格