node40.html
来自「用C++编写的GPRS协议栈源代码」· HTML 代码 · 共 72 行
HTML
72 行
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><!--Converted with LaTeX2HTML 96.1 (Feb 5, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds --><HTML><HEAD><TITLE>LL class in C++</TITLE><META NAME="description" CONTENT="LL class in C++"><META NAME="keywords" CONTENT="gprs"><META NAME="resource-type" CONTENT="document"><META NAME="distribution" CONTENT="global"><LINK REL=STYLESHEET HREF="gprs.css"></HEAD><BODY LANG="EN"> <A NAME="tex2html529" HREF="node41.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://cbl.leeds.ac.uk/nikos/figs/next_motif.gif"></A> <A NAME="tex2html527" HREF="node39.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://cbl.leeds.ac.uk/nikos/figs/up_motif.gif"></A> <A NAME="tex2html521" HREF="node39.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://cbl.leeds.ac.uk/nikos/figs/previous_motif.gif"></A> <BR><B> Next:</B> <A NAME="tex2html530" HREF="node41.html">Parameters</A><B>Up:</B> <A NAME="tex2html528" HREF="node39.html">Link Layer(LL)</A><B> Previous:</B> <A NAME="tex2html522" HREF="node39.html">Link Layer(LL)</A><BR> <P><H2><A NAME="SECTION00151000000000000000">LL class in C++</A></H2><P>The LL class is derived from the LinkDelay class. The code can be found in<I> ns</I>/ll-timers.{cc,h} and <I> ns</I>/ll.{cc,h}. The functions and variables of theclass are shown below<P><PRE>class LL : public LinkDelay { friend class llTxTimer; //rtx timer for datapkts friend class llackTimer; //rtx timer for llackspublic: : // new funcs virtual void recvACK(Packet* p); //recv ack pkts virtual void recvDATA(Packet* p); //recv data pkts virtual void sendUpDATA(Packet* p); //reassemble and send data up virtual void sendDown(Packet* p); //hack for calls in snoop.cc virtual void enqueDATA(Packet* p); //set mac hdrs and arp virtual void fragDATA(Packet* p); //fragment data virtual void sendDownDATA(void); //send data down virtual void sendACK(Packet* p); //send ll ack virtual void sendHandler(void); virtual void send_timer(void); virtual void sendackHandler(void); virtual void send_acktimer(void); virtual void RetransmitDATA(void); //rtx data on timeout virtual void RetransmitACK(void); //rtc ll ack on timeout : protected: int command(int argc, const char*const* argv); static int llverbose_; //ll layer debug output int seqno_; // link-layer sequence number int ackno_; // ACK received so far int macDA_; // destination MAC address : Queue* ifq_; // interface queue PacketQueue* buf_; // queue to store frag pkts to sendDown : int acked_; //LL layer acked? int llfraged_; //LL layer PDU fragmented? int llfragsz_; //LL layer frag size int datacounter; //no of rtx for data int ackcounter; //no of rtx for ll ack Packet *pktTx_; //store rtx data Packet *pktRx_; //store rtx ll ack}</PRE><P><BR> <HR><P><ADDRESS><I>Richa Jain (96D07007) <BR>Tue Jul 24 22:29:53 IST 2001</I></ADDRESS></BODY></HTML>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?