ASN.1模块描述

我尝试使用ASN.1进行客户端服务器通信,但我不确定我是否正确理解它。 客户端必须向服务器发送一个整数,服务器读取它并发回一个数字和一个字符串,客户端读取它们并发回一个字符串,服务器读取它并发回一个字符串。 就是这样的。

Client ---> server 1 integer Server --> Client 1 integer Server --> Client 1 String Client ---> server 1 String Server --> Client 1 String 

我写了下面的ASN.1模块,我成功用jac asn1生成了类,但我不确定模块的描述是否正确,因为两个序列完全相同。 我不确定我是否只需要输入我将发送或接收的变量或两者兼而有之。

 Demo-module DEFINITIONS ::= -- Module-name DEFINITIONS ::= BEGIN BEGIN 

客户端:: = SEQUENCE {

clientInt INTEGER,

serverInt INTEGER,

serverString BIT STRING,

clientString BIT STRING,serverResponse BIT STRING

}

Server :: = SEQUENCE {

 clientInt INTEGER , 

serverInt INTEGER,

serverString BIT STRING,

clientString BIT STRING,serverResponse BIT STRING

}

结束 – 模块结束,需要END