中联绿盟信息技术公司成立于2000年3月,是国内专业从事网络安全服务的高科技企业,其前身为国内最著名的网络安全组织“绿色兵团”。网站内容涉及安全技术的方方面面,其绿盟月刊是质量很高的免费安全信息资源
COAST小组是美国Purdue大学一个专门从事于网络安全的研究小组,他们的主页收集了全世界各地的安全资源,其Hotlist是全世界最全的安全链接资源之一
国家信息中心信息安全处的官方主页,提供安全杂志《网络安全》。这里有非常全面的安全法规的资源,包括国家法规、地方法规、中国信息安全技术标准以及信息技术安全标准目录
经常在chinaunix灌水,用ruby的watir插件搞了个回帖机器人,不过要网速好点。找个代码只是个初级版本,具体的还需要细化。
说明:用这个程序在CU的清茶斋将《士兵突击》小说发表上去
不过实现是我得在清查发个帖子,给《士兵突击》开个头。
require
'watir'
#author:cucme duanjigang1983@126.com
#定义目的站点
aim_site =
'http://bbs.chinaunix.net/forumdisplay.php?fid=31'
这就是生活,当你在追求自己理想的时候,任凭别人怎么干扰你,任凭在别人眼里你是如此的怪异不不解,自己也会在内心倔强的坚持着,不管对或者错!我不需要理解,也不想去解释!
虽然希望和前途如此迷茫,还是要抓住梦魇里闪过的那一丝希望,不能放弃!
周围的人似乎都在潇洒的活着,而唯独我忙忙碌碌的不知一天做些什么,这就是我的生活!
唯独令人欣喜的事情是:从昨晚研究到今天下午的flex终于突破了,偶用一天时间从零开始学习flex,action script,并且做出来了需要的flash,虽然很累,感觉很值得。
|
标签:杂谈 |
忽然心情不好,想要忘记一切,却忽然记起,顿时心里开始诅咒某些人死掉,从这个世界上消失!!!!
下贱的灵魂没有存在的意义,还不如将它赋予给一条狗!!!
虚拟机的无耻特性使得我安装vmware6屡屡不成功,结果就以为是中了毒,或许真的中了毒,然后打开卡巴斯基进行杀毒,睡梦中听着卡巴斯基机警的叫声,我感觉很甜蜜,虽然我肚子很疼,因为,每次鸣叫都意味着一个可恶的病毒被干掉了,早上6点40分闹钟就响了,我赶紧爬起来打开电脑看看我的爱机是否恢复正常,按下电源键,还没进入系统时,却蓝屏了!!!!
回家安装系统很快,做了ghost镜像,刚才又把我的php,apache,mysql重新装好了,可是cmedb拷贝到mysql的data目录下却不能用,看样子我得去从虚拟机中倒出来表了,并且得自己构造数据。
虽然重装了,我却能重温安装并调试成功php开发环境的小小欣慰之处,并在此备份,与linux下的手册形成双剑合璧^_^.
少废话,开工。
操作系统:windowsXP 番茄花园版,sp1,sp2,sp3补丁
软件包: apache_2.2.4-win32-x86-no_ssl.msi, mysql-5.0.27-win32.zip,
修改工程:CME_ROUTER
类:CListenner和CServer
功能:
CListenner:
1):在原来程序中,配置文件cme_router.conf中指定了监听端口,跟server.conf中有重复,将这项去掉
2):原来的程序中初始化是获取到本机IP地址列表,直接取出第一个IP地址,监听这个IP上的端口,这里存在一个缺陷,因为监听的IP地址和端口是在server.conf中指定的,而程序实际监听于上的IP地址却是获取到的第一个地址,如果遇到这样的情况就会出错,机器接了两个网卡,其中一块网卡没有接入网络,也没有配置IP地址,所以返回的IP地址列表中,有个为0.0.0.0,如果这个IP正好位于第一个位置上,则cme_router会监听0.0.0.0,而不是第二个有效的IP地址。正确的做法应该是:获取所有的IP地址,然后跟server.conf中的IP地址进行比对,如果有一个相同的,则认为是本机要监听的IP地址,也作为本机的IP地址存储起来,如果没有找到匹配的IP,则提示配置文件server.conf中没有配置本机的IP,退出程序。
如果本机没有接入网络,则在IP地址列表的第一个位置填充127.0.0.1地址,进行监听,为本机进程通讯做服务。
3):CServer部分修改
主要是接收到的消息解
昨天测试时发现发送数据的程序有时会出现“初始化输出共享内存错误”,最后查找了半天,发现是在根据环境变量CME_HOME和CONFIG_DIR以及SERVERF_ILE构造文件路径时出了错,导致最终的文件名为
/cme/而不是/cme/config/server.conf,从而初始化内存出错,经过修改,解决了file_name函数中的问题。
另外在快速发送数据时发现有时候会出现数据错位,出现“未知消息类型”初步判断是由于握手消息没有完全写入,从而后面的数据包补充了握手消息的偏移,导致整个传送过程错位。
目前能解决的办法就是发送握手消息时,如果不能完全发送,就进行数据缓存,再发送,不过这个就牵扯到为每个主机定义一个临时缓存的问题,尚待商榷!!!!
在第一个实现的版本中,cme_router所有要发往别的主机的数据都存储在一个单独共享内存中,这个共享内存的标识符为cucme,当cme_router工作时,会循环读取输出共享内存段,每读到一个数据记录,便会根据这个记录的目的IP,在CME_ROUTER的主机列表中查找对应IP的主机,如果找到相等的IP主机,则将数据发送给该主机,否则的话,就把数据丢掉,这样,就会出现这样的情况,如果接收主机上的程序在发送主机程序运行的前一段时间还未启动,而发送程序在每写入一个数据条后都能及时的读出该数据,但是发送时却会因为该主机不在线而丢弃该条记录,这样就会使得数据包丢失,影响功能,一开始想到如果主机不在线,能不能先把数据回填到内存中,以后还能读书来,但是又发现这样是不合理的,原因如下:
1):首先,虽然CME_ROUTER的每个数据包都是独立的,也就是说后收到的数据并不一定就是因为他被写入内存的时间晚于前一条,但是在实际中,往往是这样的情况,因为写内存是顺序的,读也是顺序的,大多数情况下读出来的数据都是流式的,为了保证数据的大体顺序是先进先出式的,还是不要回填的好,虽然CME_ROUTER实际功能是提供了一个数据报格式的通讯。
2):其次,会造成循
cme_router,cme_server,cme_thread开发已经好长时间了
期间发现了不少问题,cme_router又在上周进行了重新开发,为了记住自己对每个程序的理解和改进过程
所以创建这个板块来记录一切问题的发现和解决过程。
=============================================
2008年5月25日:
cme_router重新实现和设计,原因是,以前输出共享内存使用一个单独的内存块,标识符为cucme,所有输出消息都写到这个共享内存中,而cme_router发送到网络上的数据包则是从这个输出共享内存读取的,每次顺序读取一条记录,但是并不知道这个数据包的目的IP是那个主机,当cme_router取出数据包后,会遍历服务器列表,查找与消息目的地IP相同的主机,如果找到则发送,如果找不到,则丢弃数据包。
直到上周,我才发现这个问题,如果这样的话,很多主机的数据包就会被丢弃,共享内存就起不到缓冲的作用了。
为了解决此问题,将共享内存的分类重新设计了一下。
对于每台主机上的输入共享内存,按照消息类型建立共享内存列表,消息类型作为共享内存的索引。之所以这么根据消息类型设计输入共享内存,是为了高效读取,防止误读从而丢掉数据包。
新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑
Copyright © 1996 - 2008 SINA Corporation, All Rights Reserved