亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? agents.txt.svn-base

?? 網絡模擬器
?? SVN-BASE
字號:
  Agent interaction in JNS
  Christian Nentwich (c.nentwich@cs.ucl.ac.uk)
  17/03/1999

  This file describes how agents interact with each other. In other
  words, it describes how different protocol layers communicate with
  each other in JNS.
  ______________________________________________________________________

  Table of Contents


  1. Introduction

  2. Basic Interaction

  3. Setting up agents

  4. Data Transfer

     4.1 Sending Data
     4.2 Receiving Data

  5. Examples



  ______________________________________________________________________

  1.  Introduction

  This file will introduce you to the world of protocols in JNS.
  Protocols are built using a layered approach (like in any network
  these days). The bottom layer protocol in JNS is IP and everything
  else builds on top of that.

  There are three interfaces available for implementing agents: Agent,
  which is the most generic class of agents, not normally used,
  CL_Agent, which specifies the interface for connection-less agents and
  CO_Agent which is used for connection-oriented services (this does not
  mean that the service has to be reliable though!).

  Any of these interfaces can be implemented to form new agents.



  2.  Basic Interaction

  Interaction between agents is strictly asynchronous in JNS. If you
  give data to a lower-level agent to send, it will be put in a queue.
  When the agent notices the new data, it will look at the queue and
  pass the data on. The process then repeates.

  Conversely, when data is received, an agent gets an 'indication' that
  data is available. It will then read the data from the lower-level
  agent and stick it into a queue where it waits for further collection.
  It will then indicate to the next-higher agent that data is available
  and the process starts again.



  3.  Setting up agents

  Obviously, agents are not naturally inclined to run on top of each
  other. They somehow have to be attached to each other, for example TCP
  has to be attached to IP.
  In JNS, the order is that higher-level agents attach to lower-level
  agents. For example, in order to attach TCP to IP you would use the
  following code:

  ______________________________________________________________________
       ip_instance.attach(tcp_instance,Protocols.TCP);
  ______________________________________________________________________


  The Protocols.TCP parameter is an identifier by which the lower-level
  protocol can identify packets and what higher-level agents they should
  be given to. In the case of IP, all IP packets that have the protocol
  field set to 'TCP' will be given to 'tcp_instance' now.


  When the 'attach' function is called, the lower-level protocol will
  subsequently reverse-attach itself to the higher-level protocol. This
  is in order to give the higher level protocol a chance to obtain a
  reference to the lower level. In the previous example 'tcp_instance'
  had no way to get a reference to function:

  ______________________________________________________________________
         Tcp.attach(Agent lower_level)
  ______________________________________________________________________


  to do the reverse attachment.


  For some detail on how all of this actually work, I'd recommend you
  look at the jns/trace/SimpleGoBackN.java source file and
  Test_GoBackN.java. The former is a protocol that attaches to IP.



  4.  Data Transfer


  4.1.  Sending Data

  Data transfer works in a reactive way in JNS. You do not normally send
  data unless someone 'indicates' to you that you should do so.
  (Although you can if you want to.. and you have to as you will see).

  The first thing to do when sending data is to call the canSend(...)
  function of the underlying service. If it returns true, call the
  send(...)  function of the underlying service immediately and your
  data has been sent.

  If canSend() returns false then you have to wait. You are now
  guaranteed to receive a call to your agent's indicate(...) function
  (see jns/agent/Agent.java for the agent interface. This is a function
  that every agent has). The parameter to this function might be
  READY_TO_SEND. In that case, you must call canSend() again and the
  whole game starts again.



  4.2.  Receiving Data

  Receiving data is even more reactive than sending data. There is no
  active element involved. When an underlying service has data for you,
  it will call your indicate(...) function with a parameter of
  PACKET_AVAILABLE. You can then call the read(...) function of the
  underlying service to get your packet.

  5.  Examples

  Believe it or not, there is nothing more to say about agents in JNS.
  The rest is just technical details. The best thing to do is to look at

  o  jns/agent/Agent.java

  o  jns/agent/CO_Agent.java

  o  jns/agent/CL_Agent.java


  Those files contain the interfaces agents use and each function in
  them is well documented. You might also want to look at
  SimpleGoBackN.java and RandomSource and RandomSink.java for some
  examples.


















































?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品网站在线观看| 884aa四虎影成人精品一区| 久久精品水蜜桃av综合天堂| 韩国一区二区视频| 国产嫩草影院久久久久| 北条麻妃国产九九精品视频| 中文字幕日韩一区二区| 色综合久久久网| 天天综合日日夜夜精品| 欧美成人乱码一区二区三区| 国产精品一区二区在线看| 国产精品黄色在线观看| 欧美日韩一区视频| 麻豆国产91在线播放| 国产亚洲精品精华液| 91片在线免费观看| 日韩精品一级中文字幕精品视频免费观看 | 99精品久久99久久久久| 亚洲精品中文字幕在线观看| 欧美高清你懂得| 国产一区二区精品久久| 亚洲欧美一区二区视频| 欧美精品一卡两卡| 国产成人99久久亚洲综合精品| 亚洲欧美日韩一区二区 | 国产一区不卡在线| 亚洲色图.com| 精品久久久久久久人人人人传媒 | 国产精品一区二区在线观看不卡| 综合网在线视频| 日韩亚洲欧美中文三级| 99精品热视频| 精品亚洲免费视频| 一区二区三区精品在线| 久久亚洲捆绑美女| 精品婷婷伊人一区三区三| 国产精品综合在线视频| 午夜伊人狠狠久久| 欧美国产乱子伦| 日韩免费高清av| 在线观看日韩电影| 国产综合成人久久大片91| 午夜不卡在线视频| 亚洲视频一二区| 国产日产欧美一区二区三区| 91麻豆精品91久久久久同性| 99国内精品久久| 国产在线看一区| 日本在线不卡视频一二三区| 日韩久久一区二区| 国产日韩精品一区二区三区在线| 在线播放一区二区三区| 91同城在线观看| 成人美女在线视频| 国产一区久久久| 蜜桃av一区二区三区电影| 亚洲第一在线综合网站| 综合激情成人伊人| 欧美极品少妇xxxxⅹ高跟鞋 | 欧美日韩精品专区| 色域天天综合网| 暴力调教一区二区三区| 岛国一区二区在线观看| 国产精品一线二线三线精华| 欧美aaa在线| 日本午夜一本久久久综合| 亚洲自拍偷拍综合| 亚洲一区免费在线观看| 亚洲精品你懂的| 婷婷综合久久一区二区三区| 日韩一区欧美一区| 中文字幕中文在线不卡住| 国产精品进线69影院| 国产精品国产三级国产有无不卡| 国产欧美日韩在线| 久久久精品欧美丰满| 国产亚洲欧美一级| 国产欧美一区二区精品婷婷| 中文字幕av一区二区三区| 中文字幕电影一区| 国产精品久久久99| 亚洲天堂2014| 亚洲国产日韩综合久久精品| 亚洲第一av色| 日本亚洲电影天堂| 国内一区二区在线| 国产suv精品一区二区6| av在线不卡电影| 91黄色小视频| 欧美一区二区二区| 2020国产精品自拍| 国产精品福利一区| 亚洲一二三区在线观看| 奇米四色…亚洲| 国产伦精品一区二区三区在线观看 | 国产欧美日本一区视频| 亚洲丝袜另类动漫二区| 亚洲第一综合色| 免费高清成人在线| 国产91丝袜在线播放| 99国产一区二区三精品乱码| 欧美日韩激情一区| 日韩精品一区二区三区蜜臀| 国产女人aaa级久久久级| 亚洲色图视频网站| 奇米影视7777精品一区二区| 高清不卡在线观看av| 91成人在线精品| 欧美mv和日韩mv的网站| 中文字幕免费在线观看视频一区| 亚洲综合自拍偷拍| 伦理电影国产精品| 成人综合在线观看| 欧美精品一二三区| 国产日韩欧美精品电影三级在线 | 香蕉久久夜色精品国产使用方法| 久久国产欧美日韩精品| 成人黄动漫网站免费app| 欧美理论电影在线| 国产精品色在线观看| 性做久久久久久| 成人午夜免费av| 欧美精品1区2区| 中文字幕成人网| 日韩不卡一区二区| 91丨国产丨九色丨pron| 精品国产乱码久久久久久影片| 亚洲欧美精品午睡沙发| 国内外成人在线| 在线精品观看国产| 中文字幕av资源一区| 久久综合综合久久综合| 91精品福利在线| 国产精品美女久久久久久久久 | 国产欧美日韩中文久久| 午夜精品一区二区三区电影天堂| 国产精品一二三四| 日韩三级视频在线观看| 亚洲一二三区视频在线观看| 高清不卡一二三区| 日韩视频免费观看高清完整版在线观看 | 亚洲精品日日夜夜| 经典三级在线一区| 91浏览器在线视频| 激情欧美一区二区| 99国产欧美久久久精品| 日韩欧美的一区| 综合中文字幕亚洲| 国产喂奶挤奶一区二区三区| 亚洲一区二区三区四区在线 | 欧美亚洲高清一区| 精品国产不卡一区二区三区| 欧美丝袜丝nylons| 久久精品视频一区| 日韩精品一级二级 | 久久精品一区二区三区不卡| 国产精品免费网站在线观看| 91精品国产麻豆国产自产在线| 欧美偷拍一区二区| 在线观看91视频| 国产婷婷色一区二区三区在线| 成人精品鲁一区一区二区| 国产91丝袜在线观看| 91精品国产一区二区| 亚洲成人午夜影院| 日本高清不卡在线观看| 国产精品免费丝袜| 韩国精品主播一区二区在线观看| 欧美伊人精品成人久久综合97| 欧美日韩国产一二三| 国产精品美女久久久久aⅴ国产馆| 91蝌蚪国产九色| 久久精品一区二区三区四区| 激情国产一区二区| 欧美一区二区国产| 日韩专区一卡二卡| 欧洲一区二区三区在线| 欧美日韩激情一区| 视频在线观看91| 91精品欧美久久久久久动漫| 99热99精品| 国产精品乱码一区二区三区软件| 麻豆一区二区三区| 一区二区三区中文在线观看| 国产免费成人在线视频| 国产风韵犹存在线视精品| 久久久午夜电影| 国产精品一区不卡| 免费在线观看精品| 日韩精品中文字幕在线不卡尤物| 日韩国产成人精品| 一区二区三区在线免费视频 | 无码av中文一区二区三区桃花岛| 99re这里只有精品视频首页| 一区免费观看视频| 成人av影视在线观看| 国产一区二区三区av电影| 久久精品国产免费| 久久精品国产一区二区三| 久久精品人人爽人人爽|