Packet Spraying in Geneve Overlay Network - - PowerPoint PPT Presentation

packet spraying in geneve overlay network
SMART_READER_LITE
LIVE PREVIEW

Packet Spraying in Geneve Overlay Network - - PowerPoint PPT Presentation

Packet Spraying in Geneve Overlay Network draft-xiang-nvo3-geneve-packet-spray-00 Haizhou Xiang , Huawei Yolanda Yu, Huawei Paul Congdon , Tallac Networks Jianglong Wang , China Telecom IETF 101, March 2018, London In In-netwo work rk


slide-1
SLIDE 1

Packet Spraying in Geneve Overlay Network

draft-xiang-nvo3-geneve-packet-spray-00

IETF 101, March 2018, London Haizhou Xiang , Huawei Yolanda Yu, Huawei Paul Congdon , Tallac Networks Jianglong Wang , China Telecom

slide-2
SLIDE 2

In In-netwo work rk Congesti tion

In-network congestion : occurs within the interconnection network channels, due to poor traffic spraying.

Path selection can be treated as load balancing issue

 Load balancing technologies are used to solve in-network

congestion: such as ECMP, Flowlet, Packet Spraying

 Packet is both finer granularity and suitable for open system.  Packets belong to the same flow may go through different paths,

which may lead to packets out of order.

slide-3
SLIDE 3

Coping with th In-network twork Congesti tion

Packet Spraying (PS) = Packet Spraying + Reordering

Finer Granularity In In-Ordering

Leaf Leaf Leaf Leaf Leaf Leaf Spine Spine Spine Spine

… … … … … …

7 8 6 5 4 3 2 1 2 1 3 4 5 6 7 8

Reordering @ Dst-end Spray packets

  • ver paths

1 2

Distributed

  • Packet spraying at Src-end (Leaf Switch or Server)
  • No need to modify Spine switch
  • Use Geneve to encapsulate the packet Sn
  • Packet re-ordering at Dst-end (Leaf Switch or

Server)

  • For those (protocol or OS), who can't

tolerate packet reordering

slide-4
SLIDE 4

Proposed Packet Spraying Format over Geneve

Option Class = Geneve Forwarding Policy(suggested), to be assigned by IANA (TBA).

Type = TBA.

Length = 2 (8 byte)

 Flow Group ID: identifies a group of flows within the same reorder sequence

space between a Src/Dst pair. A Flow Group is uniquely identified by the 3 tuple that includes Src address, Dst address and Flow Group ID.

 Sequence Number: value ranges from 0 to (2**32)-1

slide-5
SLIDE 5

Packet Spraying function @ Src

 The Flow Group ID may correspond to an individual flow, some subset of

flows, or even all flows between the Src/Dst pair.

 How the flow corresponds to the Flow Group ID is not defined by this draft.  The source node allocates the sequence number according to the order

packets are sent for flows of the same Flow Group.

slide-6
SLIDE 6

Reordering function @ Dst

 The destination perform reordering to the packet with same 3 tuple( Src

addr, Dst addr, Flow Group ID) by sequence number.

 The destination needs to notify the capability (reorder queues assigned to

the peer) to the source.

 The source needs to tune the allocation mechanism of Flow Group ID

according to the capability of destination

 When the number of Flow Group IDs of received packets exceed the local

capability:

 Discard the Geneve packet for the Flow Group ID that exceeds the local

capability

 Remove the Geneve encapsulation, without performing reordering and

pass the packet to higher layer protocol.

2 1 2 1 2 1

Flow Group (Src addr, Flow Group ID, Dst addr)

slide-7
SLIDE 7

Simulation Set-up

  • Platform:

OMNET++

  • 3 Tier CLOS:

10G interface, 16 Core SW, 32 Edge SW, 32 Leaf SW, 128 Server

  • Traffic Pattern:

UDP, Uniform random destination

slide-8
SLIDE 8

Performance Comparison

Load balancing granularity

 Packet Spray

 Random select next hop for every packet

 Sub-flow

 Random select next hop for every 2n packets  n = ( 0 ~ 12 )  When n = 0, equal to packet spray. When n=12, close to ECMP.

 ECMP

 Select next hop by 5-tuple hash

Performance factor

 Overall throughput  Overall drops  Average latency

slide-9
SLIDE 9

Performance comparison

4 rounds with different random seed

Packet spray achieve best performance

Sub-flow Random select next hop for every 2n packets, with n increasing, close to ECMP

In general, ECMP achieve worst performance, its overall throughput is the lowest.

200 400 600 800 1000 1200 1400 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 Throughput0 Throughput1 Throughput2 Throughput3 0.00E+00 2.00E-05 4.00E-05 6.00E-05 8.00E-05 1.00E-04 1.20E-04 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 Latency0 Latency1 Latency2 Latency3

Overall throughput

5000000 10000000 15000000 20000000 25000000 30000000 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 Drops0 Drops1 Drops2 Drops3

Packet drops Average Latency

slide-10
SLIDE 10

Next Step

Seek comments and more collaboration

Continue the simulation on the packet reordering

Validate the overall performance under a real test bed