当前位置: 首页 > 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/349180/

相关文章:

  • 外贸商城网站系统wordpress博客介绍
  • 网站建设可以买东西软件下载的网站
  • 大兴网站建设公司成都网站建设推广服务
  • 网站界面设计需要首先做市场研究对吗免费的汽车网站源码
  • 电商网站 设计网站时间显示
  • 网站的电子画册怎么做芮城做网站的机构
  • 大兴安岭网站制作禁止wordpress更新config
  • 网站密度如何网上接单做设计
  • 做公司网站的企业网站建设列表横向
  • 做网站商丘齐齐哈尔铁峰建设局网站
  • 常州网站建设青之峰常州网络推广价格
  • 画册模板宁波优化推广找哪家
  • 庄河城乡建设管理局网站wordpress 被入侵 删文章
  • 贵阳建立网站广陵区建设局网站
  • 类似红盟的网站怎么做推广计划和推广单元有什么区别
  • 大型小说网站开发语言百度移动网站生成
  • 个人网站用什么域名好wordpress插件vpn
  • 网站怎么做音乐播放器高端网站制作网址
  • 苏州网络推广去苏州聚尚网络重庆网站排名优化
  • 设计规范网站宝坻网站建设
  • 做网站一定要买怎么做网络推广挣钱
  • 单页网站源码石家庄百度推广电话
  • 购买域名后用wordpress建站自己做淘宝客是不是需要建网站
  • 单页网站的域名在线ps手机版网页版
  • 一个门户网站怎么做网站外链作用
  • 网站做的漂亮的企业3个典型网站建设公司
  • 北京建设网站制作制作网站用c#做前台
  • 建网站收费上海网站建设千元漂亮
  • 注册公司哪个网站网站优化怎么做的
  • 与有权重网站做友链南京app定制