MENU

被 BS5604 创

May 15, 2026 • Nico的日常生活阅读设置

最近在研究核心网设计的时候,在某鱼发现有这样一款皮站在卖

https://www.bjcktech.com/index.php/Home/Product/view/id/289.html

然后就买回来研究一下,发现这个东西是8xA72+8G内存的,里面跑的是个Debian 10,有一个10G SFP 走的DPDK的网络栈

方案是也是一个信创方案, UCP4008 不过这玩意和这个皮站本身没有任何公开的技术细节文档

https://www.c114.com.cn/wireless/2935/a1233988.html

Web页面是Vue+Python写的,经过一段配置之后,发现这玩意发给核心网的数据不是标准的 NGAP ASN.1 PER 编码,核心网直接拒绝了

难道这玩意只能连他们自己家的核心网,十分神秘????

官网写的是 “基于3GPP标准的5G NR协议,支持与运营商5G宏网络之间的小区无缝切换。通过安全网关接入运营商核心网,提供安全可靠的5G网络服务。” 总不可能这个协议标准只是UE侧的吧(((

抓包最后一段写了个这个

"create Main sctp Ng link request"

直接按标准解码:

nico@nico5gs:~$ tshark -r /tmp/ng.pcap -d sctp.ppi==60,ngap -Y ngap -V
Frame 24: 332 bytes on wire (2656 bits), 332 bytes captured (2656 bits)
    Encapsulation type: Linux cooked-mode capture v2 (210)
    Arrival Time: May 14, 2026 12:17:24.640096000 UTC
    UTC Arrival Time: May 14, 2026 12:17:24.640096000 UTC
    Epoch Arrival Time: 1778761044.640096000
    [Time shift for this packet: 0.000000000 seconds]
    [Time delta from previous captured frame: 0.000706000 seconds]
    [Time delta from previous displayed frame: 0.000000000 seconds]
    [Time since reference or first frame: 112.811148000 seconds]
    Frame Number: 24
    Frame Length: 332 bytes (2656 bits)
    Capture Length: 332 bytes (2656 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: sll:ethertype:ip:sctp:ngap]
Linux cooked capture v2
    Protocol: IPv4 (0x0800)
    Interface index: 3
    Link-layer address type: Ethernet (1)
    Packet type: Unicast to us (0)
    Link-layer address length: 6
    Source: ChangkunTech
    Unused: 0000
Internet Protocol Version 4, Src: 172.16.13.11, Dst: 172.16.11.28
    0100 .... = Version: 4
    .... 0101 = Header Length: 20 bytes (5)
    Differentiated Services Field: 0x02 (DSCP: CS0, ECN: ECT(0))
        0000 00.. = Differentiated Services Codepoint: Default (0)
        .... ..10 = Explicit Congestion Notification: ECN-Capable Transport codepoint '10' (2)
    Total Length: 312
    Identification: 0x0000 (0)
    010. .... = Flags: 0x2, Don't fragment
        0... .... = Reserved bit: Not set
        .1.. .... = Don't fragment: Set
        ..0. .... = More fragments: Not set
    ...0 0000 0000 0000 = Fragment Offset: 0
    Time to Live: 64
    Protocol: SCTP (132)
    Header Checksum: 0xc8f8 [validation disabled]
    [Header checksum status: Unverified]
    Source Address: 172.16.13.11
    Destination Address: 172.16.11.28
Stream Control Transmission Protocol, Src Port: 38412 (38412), Dst Port: 38412 (38412)
    Source port: 38412
    Destination port: 38412
    Verification tag: 0x6a1d9dfd
    [Association index: disabled (enable in preferences)]
    Checksum: 0x22f29206 [unverified]
    [Checksum Status: Unverified]
    COOKIE_ECHO chunk (Cookie length: 228 bytes)
        Chunk type: COOKIE_ECHO (10)
            0... .... = Bit: Stop processing of the packet
            .0.. .... = Bit: Do not report
        Chunk flags: 0x00
        Chunk length: 232
        Cookie [truncated]: 3ca8e91823ee0088d90798e8d68964d200f232b400000000000000000000000000000000fd9d1d6acb2513a00000000000000000e7704fe6cc6daf181e000a009d4467ba0200960cac100d0b00000000000000000000000000000000000000000c9601000000000080020024fc2
    DATA chunk (ordered, complete segment, TSN: 0, SID: 0, SSN: 0, PPID: 60, payload length: 32 bytes)
        Chunk type: DATA (0)
            0... .... = Bit: Stop processing of the packet
            .0.. .... = Bit: Do not report
        Chunk flags: 0x03
            .... 0... = I-Bit: Possibly delay SACK
            .... .0.. = U-Bit: Ordered delivery
            .... ..1. = B-Bit: First segment
            .... ...1 = E-Bit: Last segment
        Chunk length: 48
        Transmission sequence number (relative): 0
        Transmission sequence number (absolute): 4163484753
        Stream identifier: 0x0000
        Stream sequence number: 0
        Payload protocol identifier: NGAP (60)
NG Application Protocol
    something unknown here [unknown extension root index in choice]
        [Expert Info (Warning/Undecoded): something unknown here [unknown extension root index in choice]]
            [something unknown here [unknown extension root index in choice]]
            [Severity level: Warning]
            [Group: Undecoded]
[Malformed Packet: NGAP]
    [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
        [Malformed Packet (Exception occurred)]
        [Severity level: Error]
        [Group: Malformed]

Frame 26: 80 bytes on wire (640 bits), 80 bytes captured (640 bits)
    Encapsulation type: Linux cooked-mode capture v2 (210)
    Arrival Time: May 14, 2026 12:17:24.651894000 UTC
    UTC Arrival Time: May 14, 2026 12:17:24.651894000 UTC
    Epoch Arrival Time: 1778761044.651894000
    [Time shift for this packet: 0.000000000 seconds]
    [Time delta from previous captured frame: 0.011730000 seconds]
    [Time delta from previous displayed frame: 0.011798000 seconds]
    [Time since reference or first frame: 112.822946000 seconds]
    Frame Number: 26
    Frame Length: 80 bytes (640 bits)
    Capture Length: 80 bytes (640 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: sll:ethertype:ip:sctp:ngap:ngap]
Linux cooked capture v2
    Protocol: IPv4 (0x0800)
    Interface index: 3
    Link-layer address type: Ethernet (1)
    Packet type: Sent by us (4)
    Link-layer address length: 6
    Source: CloudNetwork
    Unused: 0000
Internet Protocol Version 4, Src: 172.16.11.28, Dst: 172.16.13.11
    0100 .... = Version: 4
    .... 0101 = Header Length: 20 bytes (5)
    Differentiated Services Field: 0x02 (DSCP: CS0, ECN: ECT(0))
        0000 00.. = Differentiated Services Codepoint: Default (0)
        .... ..10 = Explicit Congestion Notification: ECN-Capable Transport codepoint '10' (2)
    Total Length: 60
    Identification: 0xfc57 (64599)
    010. .... = Flags: 0x2, Don't fragment
        0... .... = Reserved bit: Not set
        .1.. .... = Don't fragment: Set
        ..0. .... = More fragments: Not set
    ...0 0000 0000 0000 = Fragment Offset: 0
    Time to Live: 64
    Protocol: SCTP (132)
    Header Checksum: 0xcd9c [validation disabled]
    [Header checksum status: Unverified]
    Source Address: 172.16.11.28
    Destination Address: 172.16.13.11
Stream Control Transmission Protocol, Src Port: 38412 (38412), Dst Port: 38412 (38412)
    Source port: 38412
    Destination port: 38412
    Verification tag: 0xa01325cb
    [Association index: disabled (enable in preferences)]
    Checksum: 0x58f445b3 [unverified]
    [Checksum Status: Unverified]
    DATA chunk (ordered, complete segment, TSN: 0, SID: 0, SSN: 0, PPID: 60, payload length: 12 bytes)
        Chunk type: DATA (0)
            0... .... = Bit: Stop processing of the packet
            .0.. .... = Bit: Do not report
        Chunk flags: 0x03
            .... 0... = I-Bit: Possibly delay SACK
            .... .0.. = U-Bit: Ordered delivery
            .... ..1. = B-Bit: First segment
            .... ...1 = E-Bit: Last segment
        Chunk length: 28
        Transmission sequence number (relative): 0
        Transmission sequence number (absolute): 3127329949
        Stream identifier: 0x0000
        Stream sequence number: 0
        Payload protocol identifier: NGAP (60)
NG Application Protocol (ErrorIndication)
    NGAP-PDU: initiatingMessage (0)
        initiatingMessage
            procedureCode: id-ErrorIndication (9)
            criticality: ignore (1)
            value
                ErrorIndication
                    protocolIEs: 1 item
                        Item 0: id-Cause
                            ProtocolIE-Field
                                id: id-Cause (15)
                                criticality: ignore (1)
                                value
                                    Cause: protocol (3)
                                        protocol: abstract-syntax-error-falsely-constructed-message (5)