我和我追逐的梦

似曾相恋转眼过往已云烟 惋惜多情已经从前

Archive for January, 2009

Thursday
Jan 22,2009

一、PPPOE协议介绍
PPPOE,全称Point-to-Point Protocol Over Ethernet,它工作在OSI的数据链路层,PPPOE协议提供了在广播式的网络(如以太网)中多台主机连接到远端的访问集中器(我们对目前能完成上 述功能的设备为宽带接入服务器)上的一种标准。

1. PPPOE的工作原理
PPPOE协议共包括两个阶段,即PPPOE的发现阶段(PPPOE Discovery Stage)和PPPOE的会话阶段(PPPOE Session Stage)。而两者的主要区别在于只是在PPP的数据报文前封装了PPPOE的报文头。

当一个主机希望能够开始一个PPPOE会话时,它首先会在广播式的网络上寻找一个访问集中器,当然可能网络上会存在多个访问集中器时,对于主机而言 则会根据各访问集中器(AC,Access Concentration)所能提供的服务或用户的预先的一些配置来进行相应的选择。当主机选择完了所需要的访问集中器后,就开始和访问集中器建立一个 PPPOE会话进程。在这个过程中访问集中器会为每一个PPPOE会话分配一个唯一的进程ID,会话建立起来后就开始了PPPOE的会话阶段,在这个阶段 中已建立好点对点连接的双方(这种点对点的结构与PPP不一样,它是一种逻辑上的点对点关系)就采用PPP协议来交换数据报文,从而完成一系列PPP的过 程,最终将在这点对点的逻辑通道上进行网络层数据报的传送。

2. PPPOE的数据报文格式
我们简要介绍一下PPPOE的数据报文格式。PPPOE的数据报文是被封装在以太网帧的数据域内的。简单来说我们可能把PPPOE报文分成两大块,,一大 块是PPPOE的数据报头,另一块则是PPPOE的净载荷(数据域),对于PPPOE报文数据域中的内容会随着会话过程的进行而不断改变。下图1为 PPPOE的报文的格式:

image
(图1 PPPOE数据报格式)

PPPOE数据报文最开始的4位为版本域,协议中给出了明确的规定,这个域的内容填充0×1。

紧接在版本域后的4位是类型域,协议中同样规定,这个域的内容填充为0×1。

代码域占用1个字节,对于PPPOE 的不同阶段这个域内的内容也是不一样的。

会话ID点用2个字节,当访问集中器还未分配唯一的会话ID给用户主机的话,则该域内的内容必须填充为0×0000,一旦主机获取了会话ID后,那么在后续的所有报文中该域必须填充那个唯一的会话ID值。

长度域为2个字节,用来指示PPPOE数据报文中净载荷的长度。

数据域,有时也称之为净载荷域,在PPPOE的不同阶段该域内的数据内容会有很大的不同。在PPPOE的发现阶段时,该域内会填充一些Tag(标记);而在PPPOE的会话阶段,该域则携带的是PPP的报文。

这里我们主要来介绍一下PPPOE发现阶段的报文格式以及它的报文:

1) PPPOE数据报文中Tag(标记)的格式
对于发现阶段的PPPOE数据报文而言,它的净载荷可能包含零个或多个Tag(标记),实际上这些标记的意义非常类似于PPP配置参数选项,它同样也是要 经过协商的。对于PPPOE协议而言,没有像PPP的配置参数选项那样定义了很多细节,而只是一个初略的定义,因此在实际当中实现这个过程会依据不同厂商 的设备有不同。首先还是让我们看一下承载在PPPOE报文数据域中的标记封装格式,如图2,

image
(图2 标记的封装格式)

从图2中可以看出,标记的封装格式采用的是大家所熟知的TLV结构,也即是(类型+长度+数据)。标记的类型域为2个字节,下表列出了各种标记类型的含义:

image

标记的长度域为2个字节,它用来指明标记数据域的长度。
标记的数据域中用来放置不同类型标记所对应的相关数据。

2) PPPOE发现阶段的数据报文
PPPOE的发现阶段可分为四步,其实这个过程也是PPPOE四种数据报文的交换的一个过程。当完成这四步后,用户主机与访问集中器双方就能获知对方的 MAC地址和唯一的会话ID号,从而进入到下一个阶段(PPPOE的会话阶段)。实际上双方在互相知道了对方的MAC地址后,就已经在广播式的网络上确定 了一一的对应关系,为了保证这个连接的有效性,同时使PPPOE协议能更加灵活的运用,因此还加入了会话ID字段,通过这两个条件就可完成确定双方点对点 的关系。

在这个阶段一开始,由于接入用户并不知道访问集中器的MAC地址,则使用类似于ARP解析的过程的机制来获取访问集中器的MAC地址。首先由接入用 户侧发起一个初始化的广播报文,对于访问集中器如果配置了PPPOE的业务时,它会时实检测网络上的数据包,当发现以太网数据帧中所承载的是PPPOE报 文时(通过协议域的内容来区分),就会将其交给相应的模块去处理。当收到初始化报文后,访问集中器会向该用户回应一个报文。如果网络上存在很多这样的访问 集中器且都收到了用户侧发送的初始化报文时,它们也都会向用户侧会送一个确认报文,如果该用户收到这个报文后,则会依据报文中所携带的内容或本端的一些配 置来选择一个唯一的访问集中器进行会话。到此时已完成了前两步了,那么剩下的两步则是协商一些所提供的服务选项和获取PPPOE会话阶段所必须的会话ID 值。

说明:在这个阶段,所有数据报文是被承载在以太网的数据域中的,而且以太网数据帧的协议域始终为0×8863。

在PPPOE发现阶段的四步的过程中,PPPOE会遇到PADI、PADO、PADR和PADS这四种报文。PPPOE中的PADT报文是用来终止一条会话的。

PADI(PPPOE Active Discovery Initiation)报文
PPPOE发现阶段的第一步,也即是由用户侧首先发送这样一个报文。用户主机是以广播的方式发送这个报文,所以该报文所对应的以太网帧的目的地址域应填充为全1,而源地址域填充用户主机的MAC地址。广播包可能会被多个访问集中器接收到。

PADO(PPPOE Active Discovery Offer)报文
PPPOE发现阶段的第二步,也即是由访问集中器回应各用户主机发送的PADI报文,此时该报文所对应的以太网帧的源地址填充访问集中器的MAC地址,而目的地址则填充从PADI中所获取的用户主机的MAC地址。

PADR(PPPOE Active Discovery Request)报文
PPPOE发现阶段的第三步,也即是由用户主机向访问服务器发送单播的请求报文。当用户主机收到PADO报文后,会从这些报文中挑选一个访问集中器作为后 续会话的对象。由于用户主机在收到PADO报文后,就获知了访问集中器的MAC地址,因此PADR报文所以应的以太网帧的源地址填充用户主机的MAC地 址,而以太网的目的地址填充为访问集中器的MAC地址。

PADS(PPPOE Active Discovery Session-confirmation)报文
PPPOE发现阶段的第四步,也即是最后一步,此时访问集中器当收到PADR报文时,就准备进入开始一个PPP的会话了,而此时访问集中器会为在这个会话 分配一个唯一的会话进程ID,并在发送给主机的PADS报文中携带上这个会话ID。当然如果访问集中器不满足用户所申请的服务的话,则会向用户发送一个 PADS报文,而其中携带一个服务名错误的标记,而且此时该PADS报文中的会话ID填充0×0000。

PADT(PPPOE Active Discovery Terminate)报文
PADT报文可能在会话进行开始之后的任意时间内被发送,主要是用来终止一个PPPOE会话的止。它可以由主机或访问集中器发送,目的地址填充为对端的以太网的MAC地址

二、 PPPOE Discovery详细解码
我们使用科来网络分析系统捕获PPPOE数据包,如图3,

image
(图3 PPPOE Discovery的详细解码)

查看科来网络分析系统中的详细解码,可以看出这是PPPOE发现阶段的第一步的PADI报文,我们来详细说明:

版本:1,协议中给出了明确的规定,这个域的内容填充0×1。
类型:1协议中也给了明确的规定,这里也职能填充0×1
代码:0×09,表示该报文是发现阶段的 PADI报文
会话ID:0,表示还没有会话ID
长度:16,表示PPPOE数据报文中净载荷的长度
PPP发现标记:在面我们列出的标记类型表可以看出

以上主要是对PPPOE Discovery协议及详细解码的介绍。

Tags: ,
Tuesday
Jan 20,2009

昨天一不小心在Repository Browser里面把一整個Source Code目錄刪了,于是,so,所以,記錄下恢復過程吧。

在Log Message里面找到刪除時的Revision號,記錄下來,然后在小烏龜的Repository Browser右上角點HEAD,切換Revision到刪除時的Number,然后找到那個被誤刪除的目錄,用SVN Copy功能把這個目錄Copy到一個新的目錄,這時,會生成一個新的Revision,然后切換到這最新的Revision,也就是HEAD,再把剛剛Copy出來的那個目錄Copy到被誤刪除的位置,這時,會再次生成一個新的Revison,這個新的Resivion里已經包含了之前被誤刪除的那個目錄。

Tags: ,
Friday
Jan 16,2009

有时在跨架构porting的时候,如X86 To ARM, 内存的对齐问题并非如我们所愿,所以在用Gcc compiler的时候,要尽量使用__attribute__ ((__packed__)),比如:

struct ib_net_radio_t {
unsigned char word[2];
unsigned char packet;
unsigned char check;
unsigned char proto[2];
unsigned char payload[0];
}__attribute__ ((__packed__));

在ARM下用Gcc 2.9编译,如果不加上__attribute__ ((__packed__)),sizeof(struct ib_net_radio_t) == 8,加上之后,就是6. 在转packet的format的时候,这个得分外注意。

Tags: ,
Wednesday
Jan 14,2009

当初安装TeamViewer的时候,选择的类型是company,所以只要14天的试用期。试用期满之后,再次重灌选择personal后,已经提示过期,删注册表亦不可行,Google后发现TeamViewer的ID是和网卡的Mac绑定的,所以即使重灌Windows也不行。
解决方法是,在弹出提示过期的窗口上点选延长试用期,然后输入email,这时选择Personal,就能把ID转成免费的Personal了。

Tags:
Sunday
Jan 11,2009

1月2日法国最权威的互联网与IT科技新闻网站 JDN 公布了法国视角的 “2009年互联网十大趋势” (Les tendances du Web en 2009)一文,我认为非常有价值并值得各位阅读、学习和借鉴,特在翻译查询相关资料的基础上进行了翻译校对,如有错误,望批评指正。

1. 图像搜索

1603250.jpg图片搜索相信大家都不会陌生,常用的百度、谷歌、搜狗等搜索引擎均提供图片搜索,但是这里提到的图像搜索和图片搜索还并不是一回事,随着互联网 应用的飞速发展,人们已不只是满足于普通的图片搜索了,用户更加需要智能化的可识别图像搜索。尽管图像搜索在商业搜索引擎市场极为流行,但其搜索结果都是 采用与图像相关的文本信息而获得。JDN 举了三个网站作为例子和09年的发展方向: 一. 具有图像人脸识别的Polar Rose 相关介绍 二. 图片反盗版网站TinEye 上传图像或输入图像的链接地址,就可以帮助你找到这张图像在网络上的信息和踪迹,从而起到反盗版作用。相关介绍 三. 产品图像匹配购物网站 Like.com Like.com的技术优势在于通过图像搜索而非文字,它的特别之处在于,能够帮助用户通过上传商品图像来完成难以用文字描述的图像搜索。相关介绍

2. 内容点播

1603251.jpgVideo on demand 相信大家都已经不再陌生,VOD就是根据观众的要求播放节目的视频点播系统。这里,JDN 提出的COD是指content on demand,也就是说是一种内容点播系统,囊括的不仅仅是视频,还包括图像和游戏等。根据法国国家电影中心CNC统计,目前世界上共有40多个VOD系 统,同时还有数不清的有网络接入商提供的不计其数的”盒子内容点播平台” : 在美国有Vudu.com ,在法国Netgem和FNAC共同开发了 Netbox ,法国公共一台TF1 也开发自己的 Cezzer 点播系统,所有人都想从数字电视( 英语: Terrestrial Digital Television, 简称TDT ; 法语 : Télévision Numérique Terrestre,简称TNT) 解码器市场分的”一杯羹”。

3. 手机和互联网的地图定位服务

1603252.jpg趋势观察网站 Trendwatching 在对2009趋势预测中提到了一个新的词汇 mapmania ,当Apple, Nokia, Google等公司越来越关注地图服务的移动使用时(Nokia Maps, Google Maps),地图服务更将作为跨越了语言障碍的新平台。JDN 提到了两个例子 : 一. 手机社会化网络Loopt , 当同网络的朋友离你很近的时候,Loopt系统会自动提醒您。二. 另一个手机SNS — Whrrl 感兴趣的朋友可以试试。

4. 手机二维码

1603253.jpg二维码是什么?

二维条码/二维码 (2-dimensional bar code) 是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的 “0″、”1″比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具 有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋 转变化等特点。二维条码/二维码能够在横向和纵向两个方位同时表达信息,因此能在很小的面积内表达大量的信息。

-百度百科二维码定义

二维码的使用在法国还是初级阶段,2008年是法国在技术上对而二维码的测试阶段,2009年将是决定性的一年,中国这几年在二维码领域都得还 是很快的,或许是因为和邻国日本的交流比较密切吧,比如中国移动梦网的二维码软件、胖葫芦的手机博客二维码阅读、银河传媒和意锐新创的二维码图书软件都发 展的不错。

5. 付费的Web 2.0

1603254.jpgWeb 2.0在这几年发展的尤其快,但是在全球经济危机大环境影响下,所有的风投都要首先考虑Web 2.0产品是否盈利,怎样快速盈利,这与Web2.0的免费性是完全相悖的。也正是因为如此,微博客平台 Tumblr、视频分享网站 TubeMogul和文件分享网站 drop.io 都提供付费会员服务来继续生存,就连风靡全球的 Twitter 也在想办法盈利。JDN因此总结说2009年的 Web 2.0 将不会永远提供”免费的午餐”。

6. 网络广告的春天

根据摩根斯坦利报告显示,目前,广告市场很不景气,但是相对于传统媒体,网络广告盈利却在以两位数的速度增长。JDN 分析两个原因决定网络广告将在2009进入暖春 : 一. 网络广告作为新兴平台的”新鲜冲劲”犹存,正在加速赶超传统媒体广告。 二. 网络广告的”网络化”性质和”可监控网络广告投放效果性”更决定了它在2009年必将更出类拔萃。传统媒体自然不甘示弱,他们加强了自身的网络战略。比 如: 法国公共一台 TF1 前不久开发了自己的视频播放网站,Canal+也决定将更多投资移向互联网,公共六台M6也决定将自己的节目细分,加入更多广告上传到网上。所有的这一切 都预示着网络广告的春天就在不久的将来。

7. 搜索引擎优化

1603256.jpg信息搜索将永远是不老的话题,Google和其它主要搜索引擎是否在2009年会从新摊牌,在垂直搜索方面,我们不难看出,除了网页搜索、图片 搜索、视频搜索、资讯搜索、博客搜索,旅游搜索、工作搜索、车票搜索等生活搜索领域也在蒸蒸日上。那么针对如此之多的搜索引擎,网站主们再也不能只针对某 一大众引擎进行自然优化了,搜索越来越复杂,信息越来越细分,这就要求SEO er们要应对更复杂的免费与付费优化难题。

8. 社会化购物

不仅仅是比较价格,更多的是购物者的意见,社会化购物能够真正做到”物美价廉”,据一项调查显示,网购人群更容易受到其它网购用户对某商品的意 见所影响,人们不再只相信广告。JDN 提到了美国的几大购物社区网站: Thisnext.com , Stylefeeder 和 Crowdstorm.com 。在法国, Twenga , Wikio Shopping 和 24h00 等社会化购物网站也在渐渐的被更多法国网购用户所接纳。

9. 网络应用聚合

1603258.jpg网络应用聚合,英语叫Lifestreming 。Web 2.0 让互联网变的更加个性化、人性化,人与人之间的关系变得越来越密切。写博客、发布微博客、上传视频、分享图片、参加社会化网络、IM聊天和参与论坛评论。 不仅仅是个人的生活得到了改变,就连很多公关公司和广告公司都开始撰写企业博客和企业Twitter,服务多了,信息多了,这时候应运而生了应用聚合服 务,最出名的要数Mybloglog和Friendfeed了。2009年,网络应用聚合将会对信息进行细分和深加工。帊兰映像写过一个更全的 Lifestreaming介绍。

10. 手机上网

1603259.jpg2009年第一大新闻应该颁给中国移动,为什么? 因为它在推3G之前决定下调手机上网资费,新浪有专题报道。下面看看法国方面,截止到2008年6月30号,法国共有1670万手机上网用户(占了差不多 三分之一的手机用户),其中有一半用户至少每周用手机上一次网。从2007年11月开始,法国电信旗下Orange公司统计共卖出15万第一代 iPhone和45万支持3G的第二代iPhone。法国竞争监管部强制Orange结束了与苹果的独家销售协议,目前SFR 和 布依格Bouygues 电信公司也被授权销售3G iPhone手机,所有这一切都是政府为推动手机上网铺路。另据法国Benchmark公司预测,2010年,法国手机广告行业利润值将达到1亿欧元。

Tags:

Calendar

About Me

    ID:Matrix Chou
    QQ:64502411
    Skype: choukuangjay
    Twitter: andylog
    Writing USB 3G Card Driver For Router/ADSL




Blog联播



Visitors From

free counters


Subscription