- A+
周末的晚上,他发短消息来说,如果不忙,就来陪陪我。我拿着手机看了半天,不知道该如何回答。这几天来,我一直在抵抗他的短消息诱惑,实在是因为担心自己会出轨。
我结婚很多年了,我和丈夫是外人眼中的模范夫妻。但是婚姻就是爬满虱子的华丽袍子,哪个光鲜的外表下没有问题?渐渐地,老公不再陪我逛街,他喜欢研究股票和游戏,我也把注意力放到了其他地方,比如说孩子、美容和自己的工作。日子就在这样的渴望和失望中度过。如果不是他的出现,我或许就平静地接受了。
他是怎么出现的呢?说起来还有点缘分天注定的意思。那天,爸爸骨折了,我带他去看病,在急诊室里当班的就是他。他是个脸上有动人笑容的人,脾气很温和,对每个病人都很耐心,一点不急躁。因为爸爸的病情,需要来来回回拍片子打石膏,所以我跟他打了好几个照面。每次我担忧焦虑地询问,他都会认真地倾听,然后给出答案,同时露出白白的牙齿和灿烂的笑容。
我对他的第一印象仅限于此。但是在那天晚上,不知道为什么,我梦到了他,无关颜色,只是梦到了这个人,醒来后的第一感觉是甜蜜。现在想起来,或许那时我就对他有了好感吧。
第二次带爸爸去看病,我特意把自己打扮得很漂亮。他果然在,我在门口站了好一会,看着他给病人看病。后来他抬头看到我了,我说:“医生,上次我来看过病的,今天是复诊。”他说他记得的,特意冲我笑了一下。我喜欢这种温暖的笑容,配合他干净的眼神,让我不自觉地心跳加速。
到了爸爸看病的时候,他很认真仔细。最后药开好了,我咨询了很多病情方面的问题,
最后我还问他:“医生,我的右手经常握鼠标,肩膀有点疼,怎么治啊?”他检查了我的手臂说:“先擦点药膏,以后有时间就做做推拿。”然后我问他能不能留个手机号码,方便联系。他说那你也给我留一个吧,于是我们交换了手机号码。
很久以后,他告诉我,那天如果不是我先开口,他也会跟我要号码的。
“我已经察觉到了这样不好,因为我开始像一个小女生一样,习惯等一个人的短消息,心情跟着短消息起伏不平。”
大概是一个星期后的某天晚上,已经9点多了,他发了个短消息:“你爸爸的病好点了吗?”我想了半天,回答说:“好多了谢谢你。”然后又过了半个小时,我忍耐不住又给他一个消息:“你是不是在值夜班?”他说:“是的,你怎么知道?”我说:“认识的人都夸我聪明。”他说:“羡慕你老公,一定很开心,祝你们全家快乐。”我说:“也羡慕你老婆。”
接下来的几天我们保持着短消息联系。短消息真是个奇怪的东西,它让人们有时空上的距离,却又可以让人们在情感上更加接近。通常我们在聊短消息的时候,都是无所顾忌的,那些话是面对面时完全不敢讲的。早上起床时,刚下夜班的他就给我消息说:“想你了,憋不住想问你在干嘛。”我说在上班的路上。他说路上当心。于是,这一天我的心情都特别好。晚上11点多,我给他发消息问他睡了吗?他说,夜猫子,快点睡觉去。于是,我就乖乖地上床,安心睡觉。我已经察觉到了这样不好,因为我开始像一个小女生一样,习惯等一个人的短消息。心情跟着它起伏不平。但是我控制不了自己的情绪和行为。
一天早上,我发消息给他,问他在做什么。他说刚刚值夜班回家。我问他家在什么方向。他说在虹桥。我说不巧,我刚从虹桥回来,否则中午可以请你吃饭。他说今天有点忙,后天可以啊。结果到了后天,他提前说突然安排了手术,不能来了。我心里掂量着到底是真的还是假的,也许他当时是在敷衍我,并没真的打算要和我吃饭。后来,我约了朋友在新天地吃饭,那天天气不错,坐在室外的太阳伞下人也很悠闲。我忍不住拍了一张照片,发彩信给他,说如果能跟他喝咖啡就更开心了。那么的表白,我都不知道自己哪里来的勇气。
周末的时候,我去美容院,那里的女孩子说我身体经络不通,需要做按摩。这个时候我想到了他,我问他,颈部不好是去按摩院还是去医院。他说:“当然是医院了,下周你过来我帮你检查看看。”天知道,我是不是存心的。
两天后,我到医院去找他。第一次那么近距离地和他面对面,我开始紧张心跳,不怎么敢看他。他帮我检查右手臂,我看到他长久注视我做过的美甲,脸就“刷”一下红了。后来他说再帮我看看脊柱,让我趴在检查床上,我脸红得厉害,说能不能就站着检查。他说如果你怕脏,我去找个一次性的床单。我硬是不答应,说还是站着检查吧。他走过去关起了门,然后扭了几下我的脊柱,说是好的。然后我坐下来开始听他谈病情,关起的门让我觉得更不自然。
回去的路上,我给他发消息,说不知道是咖啡还是你,我今天心跳不正常。他说,我也心神不宁,给人看病老是集中不了精神。隔了一会,他又说:“明天我有空,不许你安排其他事情。”他用了“不许”两个字,这让我刚刚平复的心情又一次荡漾起来。谜底都揭开了,我们彼此都有好感。那天,我感到一种久违的幸福和兴奋。
“经过了那次牵手,听了他火热的表白后,我的心有点退缩了,考虑的问题也多了。”
那个约会,我有点矛盾。内心里,道德和情感在打架。道德说,不能去。感情说,我要去。其实,每次和他联系,和他见面,我都要经历这样一个矛盾的心理过程。这真是一种折磨。
那顿饭从12点吃到2点,气氛还算愉快,没有我想得那么尴尬。下楼的时候,电梯等了很长的时间都不来,他说不如走楼梯吧。于是在狭窄的楼道里,我穿着高跟鞋,一路跟着他。他回头看了看我,然后一下子拉起了我的手。我的心狂跳,但是没有放开。楼梯不多,也就5层,但是好像走了很长很长的时间。我现在想不起来当时的感觉了,可能脑袋里空空的,什么都没想。
出了大楼,他去开车,我有意识地选了后座,而不是副驾驶的位置。他看了我一眼,没说什么,等我坐定后,就稍稍调整了下后视镜,说:“我想多看看你。”镜子里他的眼睛还是和往常一样很迷人,很温暖,但是我不敢像往常那样沉醉其中……车子一到医院,我就说了声“再见”,快速地离开了。
回公司的路上,我突然意识到这样下去很危险。我承认对他很心动,也承认过去的那几个星期里,我一度以为自己又回到了青春少女时期,那种感觉很美好。但经过了那次牵手,我的心有点退缩了。
直到今天,老公还不知道过去的那些天老婆发生了什么事情,他只是觉得我变得越来越漂亮,开始经常惊叹我是个美女,他也只是心疼我的工作太忙,经常加班。他怎么知道我只是在外面拖延时间,不想回家面对他?
前几天晚上,我看了一个电视,里面的女主角有一段内心的忏悔,说她因为一时的糊涂,受了另一个男人的诱惑和欺骗,最后做了对不起丈夫的事情。以前看这种电视,我是没什么感觉的,但是那天晚上我心里特别难受,觉得自己很不对很不对。我为什么这样做呢?我很害怕,接下去会怎么样?每每看到他发来的短消息,我都不知道如何回答。
短消息范文第2篇
关键词:短消息;CDMA;手机;软件;存储机制
1. 引言
近年来我国的CDMA移动电话也得到了迅猛的发展,截至2009年12月,中国电信CDMA用户已经突破5000万,比上年翻了一番。
随着用户量的增长,整个CDMA移动通信网对于网络质量与增值业务的开展更加重视。如何能够最大程度的利用现有网络,挖掘网络潜力,方便灵活的开展增值服务,满足用户日益增长的业务需求成为网络运营商所要考虑的重点。基于以上需求,利用无线信令进行通讯的新业务:短消息服务蓬勃发展起来。它是CDMA系统中提供的一种手机之间及与短消息实体之间通过短消息中心进行文字信息收发的方式,其中短消息中心完成信息的存储和转发功能。短消息服务拥有价格低廉、使用方便,信息传递准确及时,存储转发离线等优点,因而倍受用户欢迎。
随着手机存储设备的日益扩容,不断降价,手机中短消息存储数量也从以前的几十条增加到几百条甚至上千条,短消息的高效存储,有效读取也成为用户使用该业务的技术关键。
2. CDMA手机中短消息数据存储和管理
2.1 手机软件的整体架构
手机软件的整体架构图如下
图一 手机软件整体架构
* Protocol Stack and Chipset Specific Driver
各种底层软件(包括手机协议栈软件)的集合和各种硬件驱动软件。
* AL
Abstraction Layer抽象层,包括逻辑存储管理子系统(Logic Storage Management)电池管理(Battery Management),键盘(Keypad),文件系统(File System Interface),音频(Audio),显示(Display)等模块,
AL是位于UI和协议栈的中间层。AL封装和屏蔽所有协议软件和硬件驱动软件实现细节,向各种上层应用(包括电话本,短消息等)提供开发所用的接口。AL层的主要目的是为了减弱软件各模块的耦合度。同时,运行在抽象层基础上的上层软件也可以非常容易的移植到不同协议栈或不同的硬件设备上。
* Application and User Interface
应用用户接口层完成移动手机的基本功能。主要包括通话,短消息,电话本,MP3,照相机,手机设置等功能。
2.2 逻辑存储管理模块介绍
逻辑存储管理子系统(Logic Storage Management以下简称LSM)主要负责管理手机中的各种应用数据存储,主要包括电话本,短消息,通话记录,日历, 多媒体彩信,数据库等模块。
图二:LSM整体框架图
2.3 短消息数据在LSM的存储和管理过程
短消息是LSM子系统的主模块之一。主要负责FLASH和UIM卡中短消息的存储管理以及排序,短信收发以及其他相关功能。当协议栈收到新消息会通知LSM短消息模块,新消息会自动存储到预设的介质中,如FLASH或UIM卡, 然后通知上层UI接口;同时,短消息模块也负责存储于FLASH和UIM卡中存储的所有短消息排序,快速定位以及读写,删除等操作。
UI 能通过LSM短消息存储接口保存、读取和删除收到和发送的消息。LSM把对FLASH和UIM卡的操作封装起来,UI可以不用关心对FLASH和UIM止存储设备的具体操作,只需调用LSM层接口就可完成
当UI需要写一条新消息到存储设备,它只需提供哪个设备它将写入,具体的写入位置由LSM来决定,LSM层会帮助完成对存储设备的具体操作。当UI需要读取、更新或者删除记录时,UI应该给出包含有设备类型和物理存储位置信息的record id给LSM层接口。
如果存储设备已满,UI还要往里写消息LSM就要发出错误消息。
如果在写入一条消息后存储设备满了,LSM应该向协议栈和UI分别发消息通知。如果UI删除了短消息,LSM层将判断,如果之前设备是满的,那就需要通知UI和PSW现在存储设备已经可用。
2.4 短消息的存储原则
手机存储短消息时,不论是从协议栈收取短消息,或者是向协议栈发送短消息的时候,LSM都会首先根据当前的存储设置来保存该条消息
* 选择存储设备时有如下五种设置:
a)DEV_FLASH,
/*短消息只存在FLASH中*/
b)DEV_UIM,
/*短消息只存在UIM卡中*/
c)DEV_UIM_FLASH,
/* 短消息优先存在UIM卡中,UIM卡满后,存到FLASH中*/
d)DEV_NONE.
/* 短消息不保存*/
e)DEV_RAM
/*短消息随机储存*/
* 当存储设置为FLASH时:
LSM应该首先将收到短消息从TEXT格式转换位PDU格式,然后调用添加的接口将其保存到FLASH中,并将保存下来的record id(高4位代表存储设备,低12位为message id)通知给相应的UI。如果没有足够的空间来存储收到的短消息,LSM 也应该发消息通知UI。
* 当存储设置为UIM时:
收取短消息到UIM的过程基本和FALSH相同。唯一不同的地方就是所有存储在UIM中的短消息会在LSM 初始化的时候全部缓存到RAM中。新收到的短消息将会插入到该缓存中,并将缓存节点的写入状态置为“to be written”,等待批量写入。如果没有足够的空间来存储收到的短消息,LSM 也应该发消息通知UI。
* 当存储设置为DEV_UIM _FLASH时:
首先写入UIM,若UIM空间不够,则写入FLASH。当两者都没有空间时,应通知UI 短消息已满的消息。
* 当存储设置为DEV_RAM时:
按照接收或发送的顺序将其写入RAM缓存,并返回设备类型 为DEV_RAM的record id。如果此时RAM缓存已满,则覆盖RAM中最早收到的那条短消息。
* 当存储设置为DEV_NONE时:
LSM不应该将该短消息存到任一个设备中,通知UI新的record id为0,UI将从缓存中获取该条消息
* 对于默认的支持类型的短消息都应该被保存
* 不论是收,或者是发短信,所有的UI都共享同一个公共的存储设置。当其中一个UI改变了存储设置的时候,之前的设置将会被更改
* FLASH和UIM中存储的记录都是相同的数据组织结构
* 为了避免多进程情况下对短消息的意外删除,对于FLASH和UIM卡中的空闲的写入,都应该遵循“先释放,先是用”的原则
* 考虑到对UIM 卡的读写性能,LSM应该将UIM卡中的内容都缓存到RAM中
* 所有对消息的读,写,更新操作的API都应该提供两种模式:PDU和TEXT
* 所有对短消息的存取操作都应该是线程安全的
2.5 短消息存储实例
以读短信为例说明短消息存储的具体实现, 读短信时,应该输入相应记录的物理 record id。若record id 中的存储设备为FLASH,则LSM应该从FLASH中读取PDU格式的短消息。如果存储设备为UIM, LSM应该从RAM中 的UIM 镜像缓存读取。总之,记录的存储格式是PDU,如果需要TEXT格式的记录,则需要做从PDU到TEXT格式的转化。
图三 读短消息的处理流程
短消息范文第3篇
图1 互联网短信网关组网结构 cmpp协议主要提供以下两类业务操作: (1)短信发送(short message mobile originate)mo 操作:手机用户为起始端; (2)短信接收(short message mobile terminated)mt操作:手机用户终止端; cmpp协议和http,ftp,smtp等协议一样,处于tcp/ip网络模型的应用层,它以tcp/ip协议作为底层通信承载。sp与ismg之间进行信息交互式可以采用长连接或短连接两种方式。本短消息服务平台所采用的连接方式为长连接,即: sp与ismg以c/s方式建立连接时,在一个tcp连接上可以连续发送多个数据包,在tcp连接保持期间,如果没有数据包发送,需要双方发送链路检测包以维持连接。 3 系统的结构和功能模块图 3.1 系统的层次结构 本短消息服务平台,在典型的网络条件下,具有稳定可靠、处理能力高、组网能力强、系统管理方便、使用灵活等特点,能够满足功能性、稳定性、效率性的要求,同时,该系统拥有强大的后台管理功能和业务处理能力,从而为业务的可持续发展以及用户快速准确获取信息,创造了条件。
整个平台的组成分为四个层次:硬件、网络、通信层:包括支持系统运行的所有服务器、客户机及网络设备、通信链路以及存储设备、输入输出设备等硬件;操作系统层(系统软件层):基于硬件平台之上,提供基本的系统调用及网络通信功能(如windows2000等);应用开发层:在操作系统之上的应用开发环境,包括软件开发工具数据库等(如visual c++、sql server 2000等);应用软件层(最外层):面向业务应用,使业务信息化和自动化,用户通过它进行业务上需要的信息处理、信息存储和信息传送等工作,是与操作人员直接相连的部分。 3.2 系统结构示意图介绍 系统主要由通信模块,业务处理模块,后台管理模块和数据库部分组成,其软件结构示意图如图2所示: 图2 系统软件结构示意图 系统支持cmpp3.0(中国移动)协议、sgip(中国联通)、smgp(中国电信、中国网通)、smpp协议(国际标准)。包括mo(包括用户上行消息和状态报告)接收及mt下行的处理,通信程序的编写完全按照协议进行开发。 4 短消息服务平台通信模块的设计 通信模块是短消息服务平台的主要模块,它是sp(业务提供者)和各基础网络运营商网关之间的一条高质量的传输通道,负责接收和响应用户请求。该模块主要是通过多线程机制来处理由sp发送到短消息网关的消息和接收由短消息网关发送的消息。通信模块涉及到以下几个重要线程:消息发送线程,消息接收线程,业务处理线程(包括mo业务处理线程和mt业务处理线程),链路维持线程以及监控线程,其中监控线程作为主线程,是由mfc程序自动创建的主线程,用于创建和监控上述几个辅助线程。通信双方以c/s方式(sp作为客户端,ismg作为服务器端)建立tcp连接,由函数 sp_connect_ismg (char ismgip [16],unsigned short ismgport)实现,该函数封装了tcp/ip的socket连接建立的过程,其中参数ismgip和工ismgport分别为短消息网关的ip地址和端口号(cmpp3.0协议规定sp和网关之间的建立长连接时所用的端口号为7890),然后需要建立cmpp连接以实现sp和ismg之间的短消息通信,该操作的目的是sp向ismg注册成为一个合法sp的身份,由函数cmpp_connect()来实现。至此,双方建立了基于tcp/ip的cmpp应用层连接。 该模块用两个缓冲队列来放置消息,它们分别是用来存放由网关发送的消息接收队列;存放sp发送到网关的消息发送队列。为了让多个线程可以互斥地从收发缓冲队列中存取数据包,必须遵循:当缓冲队列已满时,不能继续接收短信,所有消息接收线程(针对接收缓冲队列)或者mt业务处理线程(针对发送缓冲队列)必须等待;当缓冲队列为空时,不能继续取出短信,所有mo业务处理线程(针对接受缓冲 ismg receive thread send thread buffer queue queue queue buffer queue queue queue process thread tt queue queue process thread queue queue database队列)或者消息发送线程(针对发送缓冲队列)必须等待。本通信模块通过使用临界区和信号量技术处理了多线程之间的同步问题。
图3 通信模块工作流程图 短消息队列及其指针定义如下: typedef struct cmpp_head { unsigned long totallength; /*消息总长度(含消息头和消息体)*/ unsigned long commandid; /* 命令或响应类型*/ unsigned long sequenceid; /*消息流水号,顺序累加,步长为1*/ } cmpp_head; /*cmpp消息头*/ typedef struct cmpp_packet { cmpp_head pk_head; char data[cmpp_pkg_size]; /*消息体*/ unsigned long seqid; /*统一消息流水号*/ ctime time; /*写入消息队列时间*/ bool sourse; /*消息类型判断(即为mo还是mt消息*/ } cmpp_package; /*消息的结构*/ cmpp_package m_smsend[max_sm_send] // 发送短消息队列 cmpp_package m_smrecv[max_sm_recv] //接收短消息队列
int m_nsendin //发送队列的输入指针 int m_nsendout //发送队列的输出指针 int m_nrecvin //接收队列的输入指针 int m_nrecvout //接收队列的输出指针 其中将短消息存入短消息队列由函数putrecvmessage()实现: void putrecvmessage(cmpp_package * pparam, int ncount) { ………………………….. for (int i = 0; i ncount; i++) { ………………………….. memcpy( m_smrecv[m_nrecvin], pparam, sizeof(cmpp_package)); m_nrecvin++; if (m_nrecvin = max_sm_recv) m_nrecvin = 0; pparam++; ………………………….. } ………………………….. } 从接收短消息队列中取出一条短信由函数getrecvmessage()实现: bool getrecvmessage(cmpp_package * pparam) { ………………………….. entercriticalsection( m_csrecv); if (m_nrecvout != m_nrecvin) { ………………………….. memcpy(pparam, m_smrecv[m_nrecvout], sizeof(cmpp_package)); m_nrecvout++; if (m_nrecvout = max_sm_recv) m_nrecvout = 0; ………………………….. } leavecriticalsection( m_csrecv); ………………………….. } 5 系统业务处理模块的设计 该模块主要实现各种具体的短信业务,通过对mo消息进行业务分类解析、业务规则处理,直至生成下行mt等结果。 图4 业务处理模块流程图
短消息范文第4篇
[关键词]短消息中心 安全 防护
一、背景
随着信息安全工作的重视,某通信运营商的短消息中心系统是上级公司和工信部信息安全检查的重点系统,其网络结构如图1所示。
在公司组织的安全自查中,共发现系统安全漏洞544个,经过升级操作系统,打软件补丁等方式解决512个,但有32个漏洞由于系统冲突,操作系统厂商停止服务和业务限制等原因无法进行根本性修复,给系统运行带来一定的安全风险。对于此类安全问题,可采取的其它方式进行规避。
通常的规避方法为采用防火墙的方式在边界进行控制,即EDM300防火墙上做防问策略,只允许其它网段特定的主机防问短消息中心特定的服务器。通过防火墙的限制,可以消除绝大部分的安全威胁,但当安全威胁来自短消息中心系统内部时,防火墙就无能为力,特别上级部门检查,要求避开防火墙接入内网进行漏洞扫描,因此,防火墙对系统的保护对于安全检查时无法发挥作用。因此需要从其它的途径寻找方法,消除漏洞给信息安全带来的风险。
经过对残存的系统漏洞进行统计,可以归纳为三类:
1.SSH远程登录
2.ORACLE数据库系统方面
3.Apache Tomcat JSP应用服务器程序
二、解决方案
2.1SSH远程登录方面解决方案
SSH是目前较可靠,专为远程登录会话的协议工具,以加密方式传送数据,在短消息中心系统中,用于远程登录维护服务器使用,短消息的业务实现本身不使用SSH协议。因此,短消息中心的SSH服务使用者仅限于系统维护人员。因为SSH为本身的服务,可以通过系统服务白名单的方式将允许登录的主机限定于系统维护人员的主机,拒绝其它主机的连接请求。
具体做法如下:
1、修改/etc/hosts.allow文件,添加如下内容:
sshd:192.168.1.2:allow
表示允许192.168.1.2地址连接系统的SSH服务。
2、修改/etc/hosts.deny文件,添加如下内容:
sshd:all:deny
此文件是拒绝服务列表,修改后文件内容表示拒绝了所有sshd远程连接。当hosts.allow和host.deny相冲突时,以hosts.allow设置为准,这样就通过IP地址精确的指定了可以防问短消息系统的主机。
3、重启系统的SSH服务
/etc/init.d/sshd restart
以此步骤,将系统维护人员机器的IP加入到短消息系统的各个主机,使之只允许维护人员远程登录,拒绝其它任何主机的SSH连接。
2.2ORACLE数据库系统方面漏洞的解决方案
经过向短消息中心厂商了解,短消息中心的Oracle数据主要在业务实现时各个服务器之间的相互调用,并不需要对其它外界的主机提供的服务。因此对Oracle的连接仅限于短消息中心各个服务器之间,对于其它的IP址,完全可以禁止连接。
由于Oracle数据库系统服务并非linux系统本身自带服务,因此不能通过操作系统黑白名单方式进行解决。Oracle提供限制与允许特定的IP或主机名通过Oracle Net来访问数据库。这个功能由sqlnet.ora配置文件来实现。该文件通常$ORACLE_HOME/network/admin/目录下,与tnsnames.ora以及listener.ora位于同一路径。通过监听器的限制,实现轻量级访问限制,比在数据库内部通过触发器进行限制效率要高。
根据安全服务厂商绿盟的提供的其它运营商的经验,并经过短消息中心厂商研发确认,决定采用配置sqlnet.ora的方法限制IP访问数据库。具体做法如下:
1、统计短消息中心服务的所有地址,包括服务地址、私网地址及双机浮动地址,并制成列表,避免遗漏以免造成系统之间的数据库访问失败从而影响短消息业务。
2、在数据库的主机上修改tnsnames.ora文件,将统计到地址全部加入到tnsnames.ora文件:
tcp.validnode_cheching=yes
tcp.invited_nodes=(172.50.XXX.1,172.50.XXX.2,172.50.XXX.3,ip4,ip5)
通过设置tnsnames.ora文件invited_nodes值,所有没有包含在invited_nodes值中的IP或主机将无法通过Oracel Net连接到数据库,不能使用数据库的服务。
3、重启监听器使之生效。
Isnrctl reload listener SMC11
2.3 Apache Tomcat应用服务器程序程序漏洞的解方案
Apache Tomcat提供一个动态网页服务和程序,在短消息中心中主要提供报表服务器的查询与浏览,给维护人员提供一个简单、友好的使用界面。此类程序因不是服务器系统的自身服务,无法通过系统黑名单进行访问控制。一般采用在边界防火墙进行限制,但如此不能解决在内网扫描出现漏洞的问题。经过查询资料,与安全厂商与短消息中心厂商沟通,通过启用主机防火墙iptables进行端口防问限制的方式进行解决。
iptables是与最新的3.5版本Linux内核集成的IP信息包过滤系统。netfiher/iptables IP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在Linux内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。根据主机在网络所起的作用不同,有三种包过滤包方式分别是INPUT,OUTPUT及FORWARD,对应下图A,C,B三个路径。
具体到我们的要求,需要的INPUT路径的过滤器添加规则,限制访问HTYP服务的地址。具体操作步骤如下:
1.清除原有规则.
#iptables-F
#iptables-X
2.在INPUT链中添加规则
iptables-A INPUT-s 1 92.168.1.2-p tcp-dport 8080-jACCEPT
iptables-A INPUT-s 192.168.1.3-p tcp-dport 8080-jACCEPT
iptables-A INPUT-P tcp-dport 8080-j DROP
通过设置规则,允许特定的IP地址的主机访问短消息中心8080端口,未设置的IP则不能访问。
3.保存规则
/etc/rc.d/init.d/iptables save
短消息范文第5篇
关键词:STM32;EXTI;短消息;GPIO;NVIC
中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)20-4800-03
STM32 Short News Sending&Receiving System Originated from GSM
SONG Wei
(Guangdong Institute of Science and Technology, Guangzhou 510640,China)
Abstract:With the wide use of mobile phones, short message service GSM networks offered makes life and industrial remote control and alarm inform method through mobile phone possible only through a small increase in investment. This paper puts emphasis on a SMS mes sage sending and receiving system based on STM32, main contents include STM32 module configuration and implementation of SMS send ing and receiving system. Especially for system implementation on STM32 microprocessors, RCC, EXTI, NVIC,etc, were discussed.
Key words:STM32;EXTI;short message service;GPIO;NVIC
随着生活节奏的加快和生产效率的提高,不在一线现场也能及时了解第一手资料,以便及时处理生产生活过程中的突发事件,是现代控制系统发展的趋势,也是人们对现代生活便捷性追求的目标。随着手机的广泛普及,需要有一种方式让人们只需要增加少量投入便可以通过手机远程控制家里的电器或生产现场的设备,远程查看设备或安防系统状况,以降低时间和交通成本,提高工作效率。同时,一旦家中发生非法入侵、火灾、煤气泄漏[1]等安全事故时手机用户能够在短时间内获知险情,及时处理。为此本文设计了一种基于STM32和SMS的短信收发系统,在ST公司基于ARM Cortex-M3内核的嵌入式CPU上实现GSM短信的收发,以便处理用户发送短信控制设备,和设备异常时发送通知消息到用户的情况,实现用户和设备间的双向通信处理。
1系统结构及工作原理
本文所设计的STM32短信收发系统由CPU模块、电源模块、短信收发模块、时钟模块、后备电源模块、键盘模块、LED指示模块、驱动模块、检测模块等模块组成,如图1所示。
系统的工作过程为:用户通过手机将控制短信发送给GSM模块,STM32对GSM模块中的短信进行接收和解码的操作,然后对解码后的短信内容进行分析后控制相应电器,如空调、电源开关,房灯或其它照明设备的开通或关断,或转换为固定在系统中的设备操作指令,并将指令发给控制设备,控制设备通过配套操作指令产生相应动作。同时,STM32通过外部设备中断等方式获取烟感、气体传感器和防盗系统传递给CPU的信号,一旦家中或生产线上发生诸如非法入侵、火灾、煤气泄漏等险情时,系统立即向固定的手机发送告警短信,实现了家居和生产过程的告警通知和远程控制。
设计中采用STM32单片机和西门子公司的TC35i GSM模块实现具有中文短信功能的短消息收发系统。通过RS232串口将GSM模块与STM32相连,并在STM32平台上开发软件,实现中文短信点对点[2]的双向收发,从而实现与用户手机与GSM模块的远程通信功能。
发送和接收SMS短信有两种方式:基于AT命令的文本模式和基于AT命令的PDU(Protocol Description Unit Mode)模式。TC35i模块既支持文本模式也支持PDU模式,文本模式通常用来发送纯西文短信,PDU模式用于发送中文短信。在PDU模式下短信息正文经过编码后转换成UNICODE码被传送[3]。
2 STM32系统配置过程
系统采用意法半导体公司推出的STM32单片机作为嵌入式处理器。STM32系列微控制器基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。该内核产品按性能可分成不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列[4],以及接口丰富的“互联型”系列等。增强型系列时钟频率达到72MHz,是同系列产品中主频最高的产品。各个系列均内置FLASH存储器,不同的是闪存容量、SRAM的最大容量和外设接口的组合。在选择型号时重点考虑FLASH容量和SRAM空间大小[5]。系统实现了固定内容的短信收发,不需要动态生成可能使用所有汉字内容的短信,因此节省了短信PDU编解码所需要的汉字码表空间,对于32K的FLASH即已足够。