![Page 1: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/1.jpg)
Ubiquitous Component Remoting Support on Overlay Network Adaptation support with Ontology-based a
nnotation Roaming support of wireless component co
mmunication Switching support of component communi
cation using network processors Streaming support of component communi
cation for multimedia applications Transcoding support (On-going)
![Page 2: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/2.jpg)
Component Remoting Technology Map
Component Remoting Technology Map
![Page 3: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/3.jpg)
![Page 4: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/4.jpg)
Switching support of component communication using network processors
Switching mechanism supports Remote Object Invocation, .Net Remoting and Java RMI.
The switching mechanism is implemented on IXP1200.
Porting the switching mechanism to IXP2400.
Future work: Parsing header, transcoding
![Page 5: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/5.jpg)
Hardware comparison
IXP1200 IXP2400Platform Radisys ENP-2505 Radisys ENP-2611
Core StrongARM_232Mhz Xscale_600Mhz
MicroEngine/thread 6/4 8/8
RAM sizeScratchpad-4KB
SRAM-8MBDRAM-128MB
Scratchpad-16KBSRAM-8MB
DRAM-256MB
I/O 4 10/100 EtherNet Ports 3 Gigabit optical ports
New feature Scratch Ring, Next Neighbor register
porting
![Page 6: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/6.jpg)
Two mode of NNR: Date can be read
by next ME (ex. ME0:0 write data into a NNR, ME0:1 can read data from its NNR. )
Use as extra GPR NNR are useful
when two pipeline stages are communicating.
Next Neighbor Register
ME Cluster 0
ME 0:0ME 0:0 ME 0:1ME 0:1 ME 0:2ME 0:2 ME 0:3ME 0:3
ME Cluster 1
ME 1:0ME 1:0 ME 1:1ME 1:1 ME 1:2ME 1:2 ME 1:3ME 1:3
![Page 7: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/7.jpg)
Behavior of Packet Receiving
1. Divide packet into mpackets
2. Store Mpackets into DRAM
3. Gather metadata from Mpacket
64Byte
0 64 149
DRAM
SOP
EOP
Metadata of packet
ScratchPad RAMMetadata formatdl_buf_handle //The current buffer containing SOP dl_eop_buf_handle // for large packets, the buffer containing EOP. input port // port from which the packet is rxed……
![Page 8: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/8.jpg)
…
0
1
2
15
Ring DescriptorsRing Descriptors
headheadtailtail
basebaseSize=128Size=128
Scratchpad RAMScratchpad RAM
…
Ring data
Size = 128
Scratch Ring
SRAMSRAM
![Page 9: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/9.jpg)
Blueprint Ingress: one thread to
receive packets from one 100 Mbps Ethernet port
Egress: a scheduler thread loads the packets from the packet queues of each port in round-robin fashion
L2 Bridge: relays and filters frames
L3 Forwarder: forwards packets based on a forwarding table
Stack ACE: allows I/O to and from the TCP/IP stacks and ACEs
Load Balancer: distributing requests to servers according to servers’ load
StrongARMStrongARM
IngressACE
IngressACE
StackACE
StackACE
L2BridgeL2
BridgeLoad
BalancerLoad
BalancerL3
ForwarderL3
ForwarderEgressACE
EgressACE
LinuxTCP/IPStack
ME 0ME 0
IngressMicrocodeIngress
Microcode
ME 5ME 5
EgressMicrocodeEgress
Microcode
ME 1ME 1
L2L2 LBLB L3L3
ME 2ME 2
L2L2 LBLB L3L3
ME 3ME 3
L2L2 LBLB L3L3
ME 4ME 4
L2L2 LBLB L3L3
Resource Manager
![Page 10: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/10.jpg)
New Blueprint for IXP2400(Microengine)
ME 0:0ME 0:0
Packet RxMicrocodePacket RxMicrocode
ME 0:1ME 0:1
De-capsulateDe-capsulate ForwardForward Load-balancerLoad-balancer
ME 0:2ME 0:2
De-capsulateDe-capsulate ForwardForward Load-balancerLoad-balancer
ME 0:3ME 0:3
De-capsulateDe-capsulate ForwardForward Load-balancerLoad-balancer
ME 1:0ME 1:0
Packet QMMicrocodePacket QMMicrocode
ME 1:1ME 1:1
PacketSchedulerMicrocode
PacketSchedulerMicrocode
ME 1:2ME 1:2
Packet Tx MicrocodePacket Tx Microcode
ME 1:3ME 1:3
Packet Tx MicrocodePacket Tx Microcode
Communication with Core components
Use Neighbor Register
![Page 11: Ubiquitous Component Remoting Support on Overlay Network](https://reader036.vdocuments.mx/reader036/viewer/2022082612/56813b27550346895da3e753/html5/thumbnails/11.jpg)
Progress
What is done Microcode New blueprint of switching mechanism o
n IXP2400 Todo
Core component Performance measure