我尝试使用 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
客户 ::= 序列 {
clientInt INTEGER ,
serverInt INTEGER ,
服务器字符串位字符串,
clientString BIT STRING , serverResponse BIT STRING
}
服务器 ::= 序列 {
clientInt INTEGER ,
serverInt INTEGER ,
服务器字符串位字符串,
clientString BIT STRING , serverResponse BIT STRING
}
END -- 模块结束,需要 END