C#实现自定义协议问题
根据公司的要求,要写两个实现自定义协议的类:其中一个是协议的框架,另一个类继承该类,是一个具体的协议。
我拿到了类似项目的源码,不过看了之后不大懂,所有想问一下:
一:实现自定义协议具体是个什么概念,能不能给个通俗点的说法;
二:这个类要怎么写,有没有必须的步骤(这里可以简单点说)。写出来之后要怎么用(这里请详细点写,搞不明白这个问题我心里不舒服)。
c#
自定义协议
tcp
------解决方案--------------------协议的类要包括很多方法和字段,发送报文要先定义报文格式,再发送出去;接收报文要先分析报文格式,再进行数据处理。这些得根据需求来具体定义了。
------解决方案--------------------这里讲半天根本没有意义,第一你要去看需求,协议制定又不是死的,跟你们需求人员确定,第二估计你对面向对象还不熟悉吧,先把基础的东西,心里明白后,再去研究你的项目,不要上来就问大而空的问题
------解决方案--------------------你说的实现不知是不是让用户自己定义协议格式,如果是的话就要麻烦些了,比如要保存用户定义的报文开头,长度,结尾,具体的数据内容还要定义数据的标识,数据的长度,数据的值等,可以把这些内容都保存起来,用的时候取出来再用。
------解决方案--------------------拨开现象看本质,定义协议无非是为了交换数据。
你写个WebService,就可以看成是一个协议,用户按指定格式发送请求数据,你的服务返回相应的结果,就可以了。
如果用Socket通讯的话,用XML交互就可以,大部分程序都是支持XML的。将XML转化成二进制流(为了安全起见,稍微加密下),客户端解析下,就OK了
------解决方案--------------------序列化是解决自定义协议的通用方法