Title: TIPC based TML for ForCES Protocol
1TIPC based TML for ForCES Protocol
- Jon Maloy
- Shuchi Chawla
- Hormuzd Khosravi
- Furquan Ansari
- Jamal Hadi Salim
- 63rd IETF Meeting, Paris
2Topics
- Similarities/Differences to TCP/IP TML
- Control/Data Channel Model
- Address Mapping
- Multicast
- Fulfilling Requirements
3Comparison to TCP based TML
- Similar, multiplex/demultiplex model
- No TML encapsulation
- Control channel based on reliable TIPC connection
- Data channel based on best effort TIPC
connection - No transport-on-transport problem
- Limited to closed LAN networks (one chassis) for
now - Performance
- No configuration required
- FE/CE ids map directly to TIPC addresses
- Neighbour detection for free
4Connection/Channel Model
Connectionless SOCK_RDM TIPC
CE
CE Object
FB X
FB Y
Best Effort Connection as Data Channel
Reliable Connection as Control Channel
TIPC
FE
FE Object
LFB 1
LFB 2
5Address Mapping
CE 8
tml_init(ce8)
CE Object
TML API
bind(CE_CTRL_TYPE,8)
TIPC API
TIPC
FE 5
TIPC API
connect(CE_CTRL_TYPE,8)
FE Object
TML API
tml_open(ce8)
6Address Mapping
CE 8
CE Object
send_ctrl(fe 5,lfb_type6, lfb_inst 2)
FB Y
TIPC
FE 5
FE Object
LFB 6,2
7Address Mapping, Multicast
CE 8
CE Object
TML API
TIPC API
TIPC
FE 5
TIPC API
bind(mcid,5)
FE Object
TML API
tml_join(mcid)
8Address Mapping,Multicast
CE 8
CE Object
send_mc(mcid4,lfb_type6, lfb_inst 2)
FB Y
TIPC
FE 5
FE Object
LFB 6,2
9Fulfilling Requirements(1)
- Reliability
- Reliable transport in all modes
- Can be made unreliable per socket/direction
- Security
- Only secure within closed networks.
- No explicit authentication/encryption support
yet, but planned - Not IP-based, no router will forward TIPC
messages!! - Congestion Control
- At three levels Connection/Transport, Signalling
Link and Carrier level - Will give feedback to PL layer if connection is
broken - Multicast/Broadcast
- Supported
10Fulfilling Requirements(2)
- Timeliness
- Immediate delivery (No Nagle algorithm)
- Inter-node delivery time in the order of 100
microseconds - HA Considerations
- L2 link failure detection and failover handled
transparently for user - Connection abortion with error code if no
redundant carrier available - Peer node failure detection after 0.5-1.5 seconds
- Encapsulation
- No TML layer encapsulaton
- Priorities
- Supports 4 message importance priorities,
determining congestion levels and abort/rejection
levels
11Questions ???
12To Consider
CE 8
CE Object
FB Y
TIPC
FE 5
LFB 6,2
TIPC API
bind(6,2)
FE Object
FORCES API
forces_bind(lfb_type6,inst2)
13To Consider
CE 8
FORCES API
forces_send(fe 5, lfb_type6,inst 2)
CE Object
sendto(5,6,2)
TIPC API
FB Y
Control traffic Reliable connectionless
(SOCK_RDM) Data traffic Best Effort
connectionless (SOCK_DGRAM)
TIPC
FE 5
LFB 6,2
TIPC API
recvfrom()
FE Object
FORCES API
forces_recv()
14To Consider
- Should generic PL layer according to spec really
be mandatory ?? - A service description of the ForCES communication
service may be sufficient, and less restrictive