Versions in this module Expand all Collapse all v1 v1.3.0 Jan 18, 2021 v1.0.2 Oct 22, 2021 v1.0.1 Aug 27, 2021 v1.0.0 Jan 30, 2021 Changes in this version + const AmfUeNgapIdUnspecified + const MaxNumOfPDUSessions + const MaxValueOfRanUeNgapID + type AMFOverloadContent struct + Action *ngapType.OverloadAction + NSSAIList []SliceOverloadItem + TrafficInd *int64 + type AMFSCTPAddresses struct + IPAddresses []string + Port int + type AMFTNLAssociationItem struct + Ipv4 string + Ipv6 string + TNLAddressWeightFactor *int64 + TNLAssociationUsage *ngapType.TNLAssociationUsage + type BroadcastPLMNItem struct + PLMNID PLMNID + TAISliceSupportList []SliceSupportItem + type ChildSecurityAssociation struct + ESN bool + EnableEncapsulate bool + EncryptionAlgorithm uint16 + InitiatorToResponderEncryptionKey []byte + InitiatorToResponderIntegrityKey []byte + IntegrityAlgorithm uint16 + LocalPublicIPAddr net.IP + N3IWFPort int + NATPort int + PeerPublicIPAddr net.IP + ResponderToInitiatorEncryptionKey []byte + ResponderToInitiatorIntegrityKey []byte + SPI uint32 + SelectedIPProtocol uint8 + ThisUE *N3IWFUe + TrafficSelectorLocal net.IPNet + TrafficSelectorRemote net.IPNet + type GTPConnectionInfo struct + IncomingTEID uint32 + OutgoingTEID uint32 + UPFIPAddr string + UPFUDPAddr net.Addr + UserPlaneConnection *gtpv1.UPlaneConn + type GlobalN3IWFID struct + N3IWFID uint16 + PLMNID PLMNID + type IKESecurityAssociation struct + ConcatenatedNonce []byte + DiffieHellmanGroup *ike_message.Transform + DiffieHellmanSharedKey []byte + EncryptionAlgorithm *ike_message.Transform + ExpandedSequenceNumber *ike_message.Transform + IKEAuthResponseSA *ike_message.SecurityAssociation + InitiatorCertificate *ike_message.Certificate + InitiatorID *ike_message.IdentificationInitiator + IntegrityAlgorithm *ike_message.Transform + LastEAPIdentifier uint8 + LocalSPI uint64 + LocalUnsignedAuthentication []byte + MessageID uint32 + N3IWFIsBehindNAT bool + PseudorandomFunction *ike_message.Transform + RemoteSPI uint64 + RemoteUnsignedAuthentication []byte + SK_ai []byte + SK_ar []byte + SK_d []byte + SK_ei []byte + SK_er []byte + SK_pi []byte + SK_pr []byte + State uint8 + ThisUE *N3IWFUe + TrafficSelectorInitiator *ike_message.TrafficSelectorInitiator + TrafficSelectorResponder *ike_message.TrafficSelectorResponder + UEIsBehindNAT bool + type N3IWFAMF struct + AMFName *ngapType.AMFName + AMFOverloadContent *AMFOverloadContent + AMFTNLAssociationList map[string]*AMFTNLAssociationItem + N3iwfUeList map[int64]*N3IWFUe + PLMNSupportList *ngapType.PLMNSupportList + RelativeAMFCapacity *ngapType.RelativeAMFCapacity + SCTPAddr string + SCTPConn *sctp.SCTPConn + ServedGUAMIList *ngapType.ServedGUAMIList + func (amf *N3IWFAMF) AddAMFTNLAssociationItem(info ngapType.CPTransportLayerInformation) *AMFTNLAssociationItem + func (amf *N3IWFAMF) DeleteAMFTNLAssociationItem(info ngapType.CPTransportLayerInformation) + func (amf *N3IWFAMF) FindAMFTNLAssociationItem(info ngapType.CPTransportLayerInformation) *AMFTNLAssociationItem + func (amf *N3IWFAMF) FindAvalibleAMFByCompareGUAMI(ueSpecifiedGUAMI *ngapType.GUAMI) bool + func (amf *N3IWFAMF) FindUeByAmfUeNgapID(id int64) *N3IWFUe + func (amf *N3IWFAMF) RemoveAllRelatedUe() + func (amf *N3IWFAMF) StartOverload(resp *ngapType.OverloadResponse, ...) *AMFOverloadContent + func (amf *N3IWFAMF) StopOverload() + type N3IWFContext struct + AMFPool sync.Map + AMFReInitAvailableList sync.Map + AMFSCTPAddresses []*sctp.SCTPAddr + AllocatedUEIPAddress sync.Map + AllocatedUETEID sync.Map + CertificateAuthority []byte + ChildSA sync.Map + FQDN string + GTPBindAddress string + GTPConnectionWithUPF sync.Map + IKEBindAddress string + IKESA sync.Map + IPSecGatewayAddress string + Mark uint32 + N3IWFCertificate []byte + N3IWFPrivateKey *rsa.PrivateKey + NFInfo N3IWFNFInfo + NWuIPv4PacketConn *ipv4.PacketConn + RANUENGAPIDGenerator *idgenerator.IDGenerator + Subnet *net.IPNet + TCPPort uint16 + TEIDGenerator *idgenerator.IDGenerator + UePool sync.Map + func N3IWFSelf() *N3IWFContext + func (context *N3IWFContext) AMFPoolLoad(sctpAddr string) (*N3IWFAMF, bool) + func (context *N3IWFContext) AMFReInitAvailableListLoad(sctpAddr string) (bool, bool) + func (context *N3IWFContext) AMFReInitAvailableListStore(sctpAddr string, flag bool) + func (context *N3IWFContext) AMFSelection(ueSpecifiedGUAMI *ngapType.GUAMI) *N3IWFAMF + func (context *N3IWFContext) AllocatedUEIPAddressLoad(ipAddr string) (*N3IWFUe, bool) + func (context *N3IWFContext) AllocatedUETEIDLoad(teid uint32) (*N3IWFUe, bool) + func (context *N3IWFContext) DeleteAMFReInitAvailableFlag(sctpAddr string) + func (context *N3IWFContext) DeleteGTPConnection(upfAddr string) + func (context *N3IWFContext) DeleteIKESecurityAssociation(spi uint64) + func (context *N3IWFContext) DeleteInternalUEIPAddr(ipAddr string) + func (context *N3IWFContext) DeleteN3iwfAmf(sctpAddr string) + func (context *N3IWFContext) DeleteN3iwfUe(ranUeNgapId int64) + func (context *N3IWFContext) DeleteTEID(teid uint32) + func (context *N3IWFContext) GTPConnectionWithUPFLoad(upfAddr string) (*gtpv1.UPlaneConn, bool) + func (context *N3IWFContext) GTPConnectionWithUPFStore(upfAddr string, conn *gtpv1.UPlaneConn) + func (context *N3IWFContext) IKESALoad(spi uint64) (*IKESecurityAssociation, bool) + func (context *N3IWFContext) NewIKESecurityAssociation() *IKESecurityAssociation + func (context *N3IWFContext) NewInternalUEIPAddr(ue *N3IWFUe) net.IP + func (context *N3IWFContext) NewN3iwfAmf(sctpAddr string, conn *sctp.SCTPConn) *N3IWFAMF + func (context *N3IWFContext) NewN3iwfUe() *N3IWFUe + func (context *N3IWFContext) NewTEID(ue *N3IWFUe) uint32 + func (context *N3IWFContext) UePoolLoad(ranUeNgapId int64) (*N3IWFUe, bool) + type N3IWFNFInfo struct + GlobalN3IWFID GlobalN3IWFID + RanNodeName string + SupportedTAList []SupportedTAItem + type N3IWFUe struct + AMF *N3IWFAMF + AllowedNssai *ngapType.AllowedNSSAI + Ambr *ngapType.UEAggregateMaximumBitRate + AmfUeNgapId int64 + CoreNetworkAssistanceInformation *ngapType.CoreNetworkAssistanceInformation + Guami *ngapType.GUAMI + Guti string + IKEConnection *UDPSocketInfo + IMSVoiceSupported int32 + IPAddrv4 string + IPAddrv6 string + IPSecInnerIP net.IP + IPSecInnerIPAddr *net.IPAddr + IndexToRfsp int64 + Kn3iwf []uint8 + MaskedIMEISV *ngapType.MaskedIMEISV + N3IWFChildSecurityAssociation *ChildSecurityAssociation + N3IWFIKESecurityAssociation *IKESecurityAssociation + PduSessionList map[int64]*PDUSession + PortNumber int32 + RRCEstablishmentCause int16 + RadioCapability *ngapType.UERadioCapability + RanUeNgapId int64 + SecurityCapabilities *ngapType.UESecurityCapabilities + TCPConnection net.Conn + TemporaryCachedNASMessage []byte + TemporaryPDUSessionSetupData *PDUSessionSetupTemporaryData + func (ue *N3IWFUe) AttachAMF(sctpAddr string) bool + func (ue *N3IWFUe) CreateIKEChildSecurityAssociation(chosenSecurityAssociation *ike_message.SecurityAssociation) (*ChildSecurityAssociation, error) + func (ue *N3IWFUe) CreatePDUSession(pduSessionID int64, snssai ngapType.SNSSAI) (*PDUSession, error) + func (ue *N3IWFUe) DetachAMF() + func (ue *N3IWFUe) FindPDUSession(pduSessionID int64) *PDUSession + func (ue *N3IWFUe) Remove() + type PDUSession struct + Ambr *ngapType.PDUSessionAggregateMaximumBitRate + GTPConnection *GTPConnectionInfo + Id int64 + MaximumIntegrityDataRateDownlink *ngapType.MaximumIntegrityProtectedDataRate + MaximumIntegrityDataRateUplink *ngapType.MaximumIntegrityProtectedDataRate + NetworkInstance *ngapType.NetworkInstance + QFIList []uint8 + QosFlows map[int64]*QosFlow + SecurityCipher bool + SecurityIntegrity bool + Snssai ngapType.SNSSAI + Type *ngapType.PDUSessionType + type PDUSessionSetupTemporaryData struct + FailedListCxtRes *ngapType.PDUSessionResourceFailedToSetupListCxtRes + FailedListSURes *ngapType.PDUSessionResourceFailedToSetupListSURes + NGAPProcedureCode ngapType.ProcedureCode + SetupListCxtRes *ngapType.PDUSessionResourceSetupListCxtRes + SetupListSURes *ngapType.PDUSessionResourceSetupListSURes + UnactivatedPDUSession []int64 + type PLMNID struct + Mcc string + Mnc string + type QosFlow struct + Identifier int64 + Parameters ngapType.QosFlowLevelQosParameters + type SNSSAIItem struct + SD string + SST string + type SliceOverloadItem struct + Action *ngapType.OverloadAction + SNssaiList []ngapType.SNSSAI + TrafficInd *int64 + type SliceSupportItem struct + SNSSAI SNSSAIItem + type SupportedTAItem struct + BroadcastPLMNList []BroadcastPLMNItem + TAC string + type UDPSocketInfo struct + Conn *net.UDPConn + N3IWFAddr *net.UDPAddr + UEAddr *net.UDPAddr