예제 #1
0
        /// <summary>
        /// 创建一个主动方使用的ALE管理器。
        /// </summary>
        public RsspNodeClient(RsspClientConfig config)
            : base(config)
        {
            _rsspConfig = config;

            //
            config.LinkInfo.ToList().ForEach(p =>
            {
                var key = this.BuildSaiConnectionID(config.LocalID, p.Key);

                var rsspEP = new RsspEndPoint(config.LocalID, p.Key,
                                              _rsspConfig.ApplicationType, _rsspConfig.LocalEquipType,
                                              true, config.SeqNoThreshold,
                                              config.EcInterval, _rsspConfig.AuthenticationKeys, null)
                {
                    DefenseTech    = config.DefenseTech,
                    ServiceType    = config.ServiceType,
                    Algorithm      = config.Algorithm,
                    LocalEquipType = config.LocalEquipType,
                };

                var value = new SaiConnectionClient(rsspEP, p.Value, this, this);
                this.AddSaiConnection(key, value);
            });
        }
예제 #2
0
        private SaiConnectionServer CreateSaiConnectionServer(uint remoteID)
        {
            var rsspEP = new RsspEndPoint(_rsspConfig.LocalID, remoteID,
                                          _rsspConfig.ApplicationType, _rsspConfig.LocalEquipType,
                                          false, _rsspConfig.SeqNoThreshold,
                                          _rsspConfig.EcInterval, _rsspConfig.AuthenticationKeys,
                                          _rsspConfig.AcceptableClients);

            var result = new SaiConnectionServer(rsspEP, this, this);

            return(result);
        }