短信短信网关设计报告

linux设置默认网关  时间:2021-02-27  阅读:()

上海易嵌

项目名称: 短信收发系统设计项目负责人: 汤汝

组员: 邵林、陈阳、余刚

目录

概要设计部分错误未定义书签。

一、设计需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

客户端要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

服务端要求错误未定义书签。

限制性需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

项目分配情况. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

二、体统总体结构图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

三、模块介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.服务器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2 协议层. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3. 应用层模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

详细设计部分. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

一、 服务器设计与分析负责人余刚 错误未定义书签。

服务器应用层输入输出错误未定义书签。

模块功能函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

二、协议层设计与分析(负责人:汤汝)错误未定义书签。

1.客户端注册模块错误未定义书签。

2.客户端数据处理模块:错误未定义书签。

.客户端打包解包模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

4.服务端收发模块错误未定义书签。

三、应用层设计与分析负责人:邵林、陈阳 错误未定义书签。

1 .各函数模块介绍错误未定义书签。

1.1短信设置模块错误未定义书签。

 . 短信编辑模块错误未定义书签。

1.3短信操作模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

  4保存模块错误未定义书签。

2.视图模块对的构建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

  1已发件箱. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.2 草稿箱模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45

2. 写信箱错误未定义书签。

2.4发件箱模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

   收件箱模块错误未定义书签。

2.6短信设置模块错误未定义书签。

2. 自定义文件夹模块错误未定义书签。

概要设计部分

一、设计需求

使用TCP/I协议模拟GS协议设计短信收发系统。

客户端要求

1.客户端第一界面为写短信,收件箱,发件箱,已发件箱,草稿箱,短信设置。用户可自定义文件夹。

2.写短信界面进入后需要输入收件人和短信内容,收件人可以从电话本模块中选择,也可以直接输入号码如输入号码和电话本中存在记录匹配,需直接显示为电话本中姓名输入完成后可进行发送操作或存入草稿箱。

3.收件箱中存储从网络端收到的短信,收件箱中的短信按照接受时间排序,未读短信需要被标识。对收件箱的操作包括删除短信包括单条删除多条删除和全部删除) ,显示短信数量,按发件人排序。单独对每个短信条目的操作包括删除,回复,转发,查看信息详情,将发件人保存至电话本将短信内容中号码保存至电话本,将短信条目移至自定义文件夹。

4.发件箱中保存正在发送中的短信如发送成功,则短信转存至已发件箱中。如发送失败,则短信仍保存在发件箱中。对发件箱的操作包括删除短信包括单条删除,多条删除和全部删除显示短信数量。单独对每个短信条目的操作包括删除,转发,发送。

5.已发件箱中保存发送成功的短信,对已发件箱的操作包括删除短信(包括单条删除,多条删除和全部删除) 显示短信数量,按收件人排序。单独对每个短信条目的操作包括删除转发,查看信息详情,将收件人保存至电话本。

6.草稿箱存储短信编辑的草稿对草稿箱的操作包括删除短信包括单条删除,多条删除和全部删除) ,显示短信数量。单独对每个短信条目的操作包括删除,发送。

7.自定义文件夹由用户定义,用户可定义自定义文件夹名称。对自定义文件夹的操作包括删除文件夹,删除短信包括单条删除,多条删除和全部删除) ,显示短信数量。对单条短信的操作同收件箱。用户可定义多个自定义文件夹。

8.短信设置中条目项为是否匿名发送 当前容量显示, 自定义文件夹管理,是否开启发送报告,短消息服务中心设置信息有效期短信黑名单功能。 自定义文件夹管理包括创建自定义文件夹,重命名自定义文件夹,删除自定义文件夹。服务端要求

服务器端需实现接收,存储和转发三种基本功能。另需根据MS协议标准实现延时发送,定时发送匿名发送,短信屏蔽功能。服务器端需启动守护进程。短信服务器

A、提供用户管理表

B、提供短信发送日志并通知是否到达客户手机

C、提供短信接收日志并响应客户端程序连接请求

D、短信内容服务可主要分为点播和订阅两张,点播类型随机发生,用户需要该信息临时点播,为一次性服务,订阅信息由用户定制订阅关系,服务方按时向全部订阅者发送同样的信息

E、手机用户在申请使用服务方所提供的信息服务前,需要注册。注册中要对手机用户进行验证,验证通过后注册成功

限制性需求

1短信字符编码要求根据MS协议实现。

2客户端电话本条数最大200条。客户端短信最大条目数为300条。最大条目数指所有短信文件夹内包括的条目数总量。服务器端存储容量不做限制。四安全性及可靠性需求

1 要求网络传输非明码传输并保证网络传输数据之可靠性。

2要求服务器端稳定安全。

要求客户端存储安全。

项目分配情况

二、体统总体结构图

三、模块介绍

1 .服务器

负责人:余刚

服务器设计为多线程程序,每次用户注册后创建线程为其提供服务。每次用户退出结束结束服务线程。服务器运行开启守护进程,负责写日志以及清理到期的发送失败短信。

其响应流程图如下

每次用户开机时都与服务端建立连接,检查服器失败队列中是否有自己的消息。服务器收到后保存该用户的id号到数组中,并记录总个数。当用户关机后服务器与他断开连接删除数组中的id号,并个数减一。

线程接收短信包后提取目的地址分析目的地址,设置源地址,转发;线程处理流程如下:

将本次信息删除本

接收模块:当用户发送信息报时,服务器接收并保存。

解析模块:将信息报的信息解析出来包括目的地址,源地址大小,内容存入结构体中。

发送模块:将结构体发送到目的地址。提供短信发送日志并通知是否到达客户手机

发送失败分析

1.若对方手机未开机,则服务器保存消息,等待用户开机后再发送。

2.若是网络问题则重新发送,并确认是否接受成功。

服务器数据结构:

S uct   s t_fil_p ack*ead /失败队列头节点(全局)#dfine toa 1   /服务器能接受客户端的个数int cou 记录当前连接客户的个数

S  t client{

Int c  ien ;//套接字描述符

C har uer[12 ;/电话号码

thredt hreadid;//线程D

Struct cl  ent*nex 

} //用户连接时发送给服务器的结构体,记录用户信息

t  t  i  t_hea{

S rut   st_h d p v;

trc t lis _hed next;

}

S trc t a l_p ac k{

S ruc t lin_s edac tmp;

truct tim t mestam;

};/发送失败后保存的结构体

S uct list_filpck 

Struct List_ed  is _h;

Stuc  fil_pac fpc;

};//建立失败内容链表

2.协议层

协议层分为客户端和服务器两种;总共有两个线程,其中接收线程一直存在系统中阻塞读取端口信息,接收到信息后解压解密后发送给应用层。发送线程由用户调用接口函数后开启发送线程,获得发送内容后压缩加密后再打包,发送至服务端。

S ruct c  iensendpdu_ead{/客户发送数据包头部

Uns  ned char  ca   3];

Unsigned car pdu_type;

Unsined cha r;

ns igne h   _len //目的地址长度

Unsiged har  _type;

Un gned h  d a[1  ];/目的地址

n ined char pid;

Unsiged c r cs;

Unsiged hr vp

Unsigned char udl //用户数据长度

};

Strct lien_rcvpdu_ a{/客户接收数据包头部

Unsiged chr sca[13]

nsined car pdu_typ ;

Uns gned char alen;//源地址长度

Unsige cha o_typ

Us  ned char a[11];/源地址

Un ign  har pi;

siged char dcs;

n ge cha scts[];

n igned chr udl;//用户数据长度

 ;

S trc  c  iet_snd_du{/客户端发送数据包

 Struct cl  et e _pduhead hea;

C ha bffer 140];

};

Struct c  int_ec_  {/客户端接收数据包

Surt cl   t_ecv_pdu_head   d;

C r bfer[140];

}

协议层模块图

客户端协议层:

HostKvm香港VPS七折:$5.95/月KVM-2GB内存/40GB硬盘/500GB月流量

HostKvm是一家成立于2013年的国外主机服务商,主要提供VPS主机,基于KVM架构,可选数据中心包括日本、新加坡、韩国、美国、俄罗斯、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。商家本月针对香港国际机房提供特别7折优惠码,其他机房全场8折,优惠后2G内存香港VPS每月5.95美元起,支持使用PayPal或者支付宝付款。下面以香港国际(HKGlobal)为...

SpinServers(月89美元) 2*e5-2630L v2,美国独立服务器

SpinServers服务商也不算是老牌的服务商,商家看介绍是是2018年成立的主机品牌,隶属于Majestic Hosting Solutions LLC旗下。商家主要经营独立服务器租用和Hybrid Dedicated服务器等,目前包含的数据中心在美国达拉斯、圣何塞机房,自有硬件和IP资源等,商家还自定义支持用户IP广播到机房。看到SpinServers推出了美国独服的夏季优惠促销活动,最低月...

tmhhost(100元/季)自带windows系统,香港(三网)cn2 gia、日本cn2、韩国cn2、美国(三网)cn2 gia、美国cn2gia200G高防

tmhhost可谓是相当熟悉国内网络情况(资质方面:ISP\ICP\工商齐备),专业售卖海外高端优质线路的云服务器和独立服务器,包括了:香港的三网cn2 gia、日本 cn2、日本软银云服务器、韩国CN2、美国三网cn2 gia 云服务器、美国 cn2 gia +200G高防的。另外还有国内云服务器:镇江BGP 大连BGP数据盘和系统盘分开,自带windows系统,支持支付宝付款和微信,简直就是专...

linux设置默认网关为你推荐
推广方法营业推广的方式有哪些拂晓雅阁现在最流行的系统是那个???手机区号有的手机号中间的号码是地区区号,那是什么卡手机区号手机电话号码开头95共15位号码是什么手机号码?安装迅雷看看播放器迅雷看看不能播放,说我尚未安装迅雷看看播放器商标注册查询官网商标注册网的官网是哪个?ios系统ios是什么意思 ios系统是什么云挂机云软件挂机赚钱是骗子如何清理ie缓存怎么样清理IE缓存?空间装扮免费空间还有那些装扮是免费的?
什么是域名地址 七牛优惠码 美国php空间 免费活动 网络空间租赁 vip域名 新睿云 百度云加速 杭州电信宽带 睿云 电信主机托管 免备案jsp空间 美国vpn代理 vim 29美元 电脑主机响 kosspp sockscap教程 免费邮件服务器软件 博世报警主机 更多