self.command('echo $USER; nohup sudo tshark -f "tcp port not 22 and port not 53" -i any -w '+self.EPCSourceCodePath+'/scripts/'+EPC_PcapFileName+' > /tmp/tshark.log 2>&1 &',self.EPCUserName,5)
cancel_ra_proc(enb_mod_idP,CC_idP,frameP,current_rnti);// TODO: Currently we don't support retransmission of Msg3 ( If in error Cancel RA procedure and reattach)
cancel_ra_proc(enb_mod_idP,CC_idP,frameP,current_rnti);// TODO: Currently we don't support retransmission of Msg3 ( If in error Cancel RA procedure and reattach)
uint16_tue_process_rar(constmodule_id_tmodule_idP,constintCC_id,constframe_tframeP,constrnti_tra_rnti,uint8_t*constdlsch_buffer,rnti_t*constt_crnti,constuint8_tpreamble_index,uint8_t*selected_rar_buffer// output argument for storing the selected RAR header and RAR payload
How to configure wireshark for dissecting LTE protocols:
How to configure wireshark for dissecting LTE protocols:
- start the wireshark as a sudoers
- start the wireshark as a sudoers
- goto analyze->enabled prototols
- goto analyze->enabled prototols
=> enable mac_lte_udp and rlc_lte_udp
=> enable mac_lte_udp and rlc_lte_udp
- goto edit/preferences and expand Protocols
- goto edit/preferences and expand Protocols
- select UDP and check "try heuristic sub-dissectors first"
- select UDP and check "try heuristic sub-dissectors first"
- select MAC-LTE, and check all the options (checkboxes), and set the "which layer info to show in info column" to "MAC info"
- select MAC-LTE, and check all the options (checkboxes), and set the "which layer info to show in info column" to "MAC info"
- select RLC-LTE, and check all the options except the "May see RLC headers only", and set the "call PDCP dissector for DRB PDUs" to "12-bit SN". Optionally you may select the sequence analysis for RLC AM/UM.
- select RLC-LTE, and check all the options except the "May see RLC headers only", and
set the "call PDCP dissector for DRB PDUs" to "12-bit SN". Optionally you may select the sequence analysis for RLC AM/UM.
How to use
How to use
- start eNB or UE with option -W (or -P if you want to make a pcap file)
- start eNB or UE with option --opt.type wireshark
- capture on local interface "lo"
--opt options are:
- filter out the ICMP/DNS/TCP messages (e.g. "!icmp && !dns && !tcp")
--opt.type none/wireshark/pcap
--opt.ip 127.0.0.1 to specify the output IP address (default: 127.0.0.1)
output port is always: 9999 (to change it, change constant: PACKET_MAC_LTE_DEFAULT_UDP_PORT in OAI code)
--opt.path file_name to specify the file name (pcap)
- capture on local interface "lo"
- filter out the ICMP/DNS/TCP messages (e.g. "!icmp && !dns && !tcp")
LOG_E(PHY,"Received Timestamp (IF4p5) doesn't correspond to the time we think it is (proc->tti_rx %d, subframe %d, symbol_mask %x)\n",
LOG_E(PHY,"Received Timestamp (IF4p5) doesn't correspond to the time we think it is (proc->tti_rx %d, subframe %d, symbol_mask %x)\n",proc->tti_rx,*subframe,proc->symbol_mask[*subframe]);
// AssertFatal((proc->RU_mask&(1<<i)) == 0, "eNB %d frame %d, subframe %d : previous information from RU %d (num_RU %d,mask %x) has not been served yet!\n",eNB->Mod_id,ru->proc.frame_rx,ru->proc.subframe_rx,ru->idx,eNB->num_RU,proc->RU_mask);
//AssertFatal((proc->RU_mask&(1<<i)) == 0, "eNB %d frame %d, subframe %d : previous information from RU %d (num_RU %d,mask %x) has not been served yet!\n", eNB->Mod_id,ru->proc.frame_rx,ru->proc.subframe_rx,ru->idx,eNB->num_RU,proc->RU_mask);
if(ru->is_slave==0&&((proc->RU_mask[ru->proc.tti_rx]&(1<<i))==1)&&eNB->RU_list[i]->state==RU_RUN){// This is master & the RRU has already been received
if(ru->is_slave==0&&((proc->RU_mask[ru->proc.tti_rx]&(1<<i))==1)&&eNB->RU_list[i]->state==RU_RUN){//This is master & the RRU has already been received