Moved to https://speakerdeck.com/ebiken/zebra-srv6-cli-on-linux-dataplane-enog-number-49
Introduction to SRv6, Linux SRv6 implementation and how to add SRv6 CLI to Zebra 2.0 Open Source Network Operation Stack.
Presented at ENOG (Echigo NOG) #49.
Moved to https://speakerdeck.com/ebiken/zebra-srv6-cli-on-linux-dataplane-enog-number-49
Introduction to SRv6, Linux SRv6 implementation and how to add SRv6 CLI to Zebra 2.0 Open Source Network Operation Stack.
Presented at ENOG (Echigo NOG) #49.
In Network Computing Prototype Using P4 at KSC/KREONET 2019Kentaro Ebisawa
Case Study of P4 applying to CAN (Control Area Network) data pre-processing using FPGA + Netcope P4 compiler.
Presented at KSC / KREONET WORKSHOP 2019 | DAY 1 Session 1: SDN/NFV/P4
http://www.ksc2019.re.kr/
Comparison of SRv6 Extensions uSID, SRv6+, C-SRHKentaro Ebisawa
Comparing concept, SID and header format of compressed Segment Routing IPv6 proposals such as uSID, SRv6+, C-SRH. Slide presented at SRv6 Consortium @Tokyo on 23rd Aug 2019.
"p4srv6 (P4-16) design document rev1.0" Overview of Open Source SRv6 Mobile Userplane P4-16 on BMv2 design (planned to be public in March) #enog #enog55 @Nigata http://enog.jp/archives/2014
SRv6 Mobile User Plane : Initial POC and ImplementationKentaro Ebisawa
SRv6 Mobile Uplane POC results and findings talked at ENOG55 @Nigata http://enog.jp/archives/2014
SRv6 functions: T.M.Tmap, End.M.GTP4.E using VPP and P4 on Tofino switch.
JANOG43 Forefront of SRv6, Open Source ImplementationsKentaro Ebisawa
Status of SRv6 Open Source Implementations including where you can find the source code. English slide comes after Japanese.
This is a session from JANOG43 "Forefront of SRv6" program held on 23 Jan 2019 @ Kohu Japan.
https://www.janog.gr.jp/meeting/janog43/program/srv6
* Introduction – Miya Kohno
* SRv6 Update – Clarence Filsfils
* SRv6 Mobile user plane Update – Satoru Matsushima
* SRv6 Open Source Implementation Update – Kentaro Ebisawa
* SRv6 Academy Update – Chunghan Lee
* Vendor Update (Huawei) – Ryuichi Takashima
* Vendor Update (Cisco) – Teppei Kamata
How to build and use GTPing to generate GTP traffic for testing without eNB, SPGW etc. This work was done as part of the preparation of SRv6 mobile user plane POC at SRv6 Consortium, Data plane Study Group, which is a group of people interested in SRv6.
Slides from ONOS/CORD meetup in Tokyo 2018. 20th April 2018.
http://www.e-side.co.jp/onoscordmeetup/#P4_2
Future Mobile User Plane is heavily discussed in many SDOs like 3GPP, IETF etc. and still not concreate. P4 lang is usefull to prototype such changing protocol on software switch and on ASIC/NPU.
This slide introudce one candidate for future Mobile User Plane protocol, SRv6 for Mobile User Plane and proto-type implemented in P4-14.
https://datatracker.ietf.org/doc/draft-ietf-dmm-srv6-mobile-uplane/
“p4alu” is a P4 program who would parse UDP packet with payload in "p4alu header format" and apply calculation.
This program is tested using BMv2 simple_switch P4 target.
zebra is an open source implementation as a successor of GNU Zebra and Quagga project. Together with openconfigd, it will work as data plane agnostic Network Operation Stack working with variable protocol / functional modules.
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
10. SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 11
“Comcast and The Smarter Network with John Leddy”
Recorded at Segment Routing Field Day on June 21, 2016
https://techfieldday.com/appearance/comcast-presents-at-segment-routing-field-day/
Cable TV & ISP
“LinkedIn OpenFabric Project – Interop 2017”
https://www.slideshare.net/shawnzandi/linkedin-openfabric-project-interop-2017
Data Center
19. SRv6 basics
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 22
Segment Routing Header (SRH)
IPv6
Header
IPv6
Extension
Header
Payload
• Routing Type
• 4 (Segment Routing)
• Segments Left
• 次の Segment へのインデックス
(Pointer)
• エンドノードで減らされる
• Last Entry
• Segment List の最初のSegment
へのインデックス
• Segment List
• 最後~最初の順にエンコードされ
た Segment 列 (Segment List [0]
は最後に到達する Segment)
Reference: draft-ietf-6man-segment-routing-header
20. SRv6 basics
• Segment List: <S1, S2, S3>
• S1, S2, S3: 1st, 2nd, 3rd の segment
• IP Packet: (SA,DA) (S3, S2, S1; SL)
• SA, DA: Source, Destination Address
• SRH with SID list <S1, S2, S3>
• SL: Segments Left
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 23
SID List の記述方法
S1
S2
S3
SL
参照:“SRv6 Network Programming” Internet-Draft document
draft-filsfils-spring-srv6-network-programming
注:segment の順番が <...> と (...) で逆!!
21. SRv6 basics
“ノード” が持つ機能を “function” と呼び、
1ノードに複数のfunction(segment id)を持つことがある
• Transit function ⇒ SRHを付与(SRv6サポートしてる場合)
• パケットの宛先(DA)がノードのアドレスではない
• パケットの宛先(DA)がノードの “My Local SID Table” に載ってない
• (SRv6をサポートしてない)
• End function ⇒ 宛先(DA)に基づき処理する
• パケットの宛先(DA)がノードの “My Local SID Table” に載っている
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 24
End vs Transit function
22. SRv6 basics
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 25
Transit functions
Function Description
T Forwards the packet without inspecting the SRH
T.Insert Transit behavior with insertion of an SRv6 Policy
T.Encaps Transit behavior with encapsulation in an SRv6 policy
T.Encaps.L2 T.Encaps behavior of the received L2 frame
#1
#4
#2 #3
#5
挿入
カプセル化
2種類の
SRH付与方法
23. SRv6 basics
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 26
Transit functions (T.Insert)
a
#1
b #4
#2 #3
#5
d
c
IPv6 Payload
IPv6 PayloadSRH (SA:a, DA: #1)(d, #5, #3, #2, #1; SL=4)
Next SegmentDestination Host
(SA:a, DA: d)
24. SRv6 basics
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 27
Transit functions (T.Encaps)
IPv6 Payload
IPv6 PayloadSRH IPv6 (SA:b, DA: #4)(#3, #2, #4; SL=2)(SA:b, DA: c)
a
#1
b #4
#2 #3
#5
d
c
Next Segment
(SA:b, DA: c)
25. SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 28
SRv6 basics
Inline mode Encap mode
最終宛先は SID[0] 最終宛先はカプセル
化されたIPヘッダの中
パケット構造の例(Wireshark)
IP + SRH + ICMP IP + SRH + IP + ICMP
26. SRv6 basics
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 29
End functions (End)
End: 宛先(DA)を next segment が指すSIDで更新しパケットを転送
IPv6
IPv6 PayloadSRH
(SA:a, DA: #1)(d, #5, #3, #2, #1; SL=4)PayloadSRH
(SA:a, DA: #2)(d, #5, #3, #2, #1; SL=3)
a
#1
b #4
#2 #3
#5
d
c
Next Segment
27. SRv6 basics
• IS-IS Extensions to Support Routing over IPv6 Dataplane
• https://datatracker.ietf.org/doc/draft-bashandy-isis-srv6-extensions/
• BGP Link State extensions for IPv6 Segment Routing(SRv6)
• https://datatracker.ietf.org/doc/draft-dawra-idr-bgpls-srv6-ext/
• BGP Signaling of IPv6-Segment-Routing-based VPN Networks
• https://datatracker.ietf.org/doc/draft-dawra-idr-srv6-vpn/
• OSPFv3 Extensions for SRv6
• https://datatracker.ietf.org/doc/draft-li-ospf-ospfv3-srv6-extensions/
• LISP Control Plane for SRv6 Endpoint Mobility
• https://datatracker.ietf.org/doc/draft-rodrigueznatal-lisp-srv6/
• PCEP Extensions for Segment Routing leveraging the IPv6 data plane
• https://datatracker.ietf.org/doc/draft-negi-pce-segment-routing-ipv6/
• Protocol for Forwarding Policy Configuration (FPC) in DMM
• https://datatracker.ietf.org/doc/draft-ietf-dmm-fpc-cpdp/
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 30
SRv6 のコントロールプレーン
LISP: Locator/ID Separation Protocol
PCEP: Path Computation Element (PCE) Communication Protocol
ルーティングプロトコル
を用いた制御
コントローラー
を用いた制御
30. SRv6 Network Programmability
• draft-filsfils-spring-srv6-network-programming
• https://datatracker.ietf.org/doc/draft-filsfils-spring-srv6-network-programming/
• SRv6 Network Programming および関連した Function の大元となる文書
• draft-ietf-dmm-srv6-mobile-uplane
• https://datatracker.ietf.org/doc/draft-ietf-dmm-srv6-mobile-uplane/
• SRv6をモバイル網で利用する時に必要な Function およびユースケースを記載
• GTP から SRv6 へマイグレーションする際のシナリオを含む
• draft-xuclad-spring-sr-service-programming
• https://datatracker.ietf.org/doc/draft-xuclad-spring-sr-service-programming/
• Service Chaining 向けの Function を記載
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 33
Function の定義されている場所
31. SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 34
SRv6 Network Programmability
End Endpoint
Xconnect End.X Endpoint with Layer-3 cross-connect
Table Lookup End.T Endpoint with specific IPv6 table lookup
Search End.S Endpoint in search of a target in table T
Decaps
+ Xconnect
End.DX6 Endpoint with decapsulation and IPv6 crossconnect
End.DX4 Endpoint with decapsulation and IPv4 crossconnect
End.DX2 Endpoint with decapsulation and Layer-2 crossconnect
End.DX2V Endpoint with decapsulation and VLAN L2 table lookup
Decaps
+ Table Lookup
End.DT6 Endpoint with decapsulation and specific IPv6 table lookup
End.DT4 Endpoint with decapsulation and specific IPv4 table lookup
End.DT46 Endpoint with decapsulation and specific IP table lookup
End.DT2U Endpoint with decapsulation and unicast MAC L2 table lookup
End.DT2M Endpoint with decapsulation and L2 table flooding
Binding
End.B6[.Red] Endpoint bound to an SRv6 policy
End.B6.Encaps[.Red] Endpoint bound to an SRv6 encapsulation policy
End.BM Endpoint bound to an SR-MPLS policy
T Transit behavior
Insert
T.Insert Transit with insertion of an SRv6 Policy
T.Insert.Red Transit with reduced insertion of an SRv6 Policy
Encaps
T.Encaps Transit with encapsulation in an SRv6 Policy
T.Encaps.Red Transit with reduce encaps in an SRv6 Policy
T.Encaps.L2 Transit with encapsulation of L2 frames
T.Encaps.L2.Red Transit with reduce encaps of L2 frames in an SRv6 Policy
3) draft-ietf-dmm-srv6-mobile-uplane-02
Mobile
End.MAP Endpoint function with SID mapping
End.M.GTP6.D
Endpoint function with decapsulation from
IPv6/GTP tunnel
End.M.GTP6.E
Endpoint function with encapsulation for
IPv6/GTP tunnel
End.M.GTP4.E
Endpoint function with encapsulation for
IPv4/GTP tunnel
End.Limit Rate Limiting function
T.M.Tmap
Transit behavior with tunnel decapsulation
and mapping an SRv6 Policy
Application
End.AM SRv6 masquerading proxy
End.AD SRv6 dynamic proxy segments
End.AS SRv6 dynamic Static proxy segments
End.AN SR-aware function (native)
1) draft-filsfils-spring-srv6-network-programming-05
2) draft-xuclad-spring-sr-service-programming-00
List of SRv6 functions
2018年10月18日 現在
32. SRv6 Network Programmability (プログラマビリティの利用例)
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 35
SRv6 for Mobile User Plane
ソフトバンク 松嶋聡 (2018年) IETF(と3GPP)でのモバイル・5G関連活動 Slide 20
https://www.isoc.jp/wiki.cgi?action=ATTACH&file=s4%2Dmatsushima%2Epdf&page=IETF100Update
SRv6 ネットワークプログラマビリティを利用した
モバイルネットワークのシンプル化
33. SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 36
SRv6 Network Programmability (プログラマビリティの利用例)
SRv6 Functions in “5.3.1. Interworking with IPv6 GTP”
(Encap GTP) End.M.GTP6.D End (PSP)
End
End.DT6
(Decap GTP)
End.M.GTP6.E
End
End
T.Encaps.Red
Uplink
Downlink
SRv6 と GTP の
マッピング(変換) SRv6 有無の変換
インターネット等
モバイル端末
Assuming User Packet (A,Z) is IPv6
PSP: Penultimate Segment Pop
Segment Routing IPv6 for Mobile User Plane
https://tools.ietf.org/html/draft-ietf-dmm-srv6-mobile-uplane-02
2018/04/20 | ONOS/CORD meetup in Tokyo
“proto-typing new protocol with P4, SRv6 for Mobile User Plane”
https://www.slideshare.net/kentaroebisawa/srv6-mobile-user-plane-p4-prototype
P4による実装や
パケットレベルの解説
43. SRv6 の実装例(オープンソース)
• Kernel network stack (4.10 and later)
• http://www.segment-routing.org/
• By “IP Networking Lab” of Université Catholique de Louvain, Louvain-la-Neuve,
Belgium
• srext: Linux kernel module
• https://netgroup.github.io/SRv6-net-prog/
• Developed by the Networking Group from University of Rome Tor Vergata, Italy
• “Chaining of SRv6-unaware VNFs” ユースケースをサポート(End.AD, End.AM)
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 46
SRv6 Linux Kernel
44. SRv6 の実装例(オープンソース)
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 47
SRv6 Functions on Linux data plane
First supported in Kernel 4.10
More functions added in 4.14
source: http://www.segment-routing.net/open-software/linux/
(status as of 2018/04/17)
45. SRv6 の実装例(オープンソース)
• Not a Linux Kernel (module) implementation, but works on Linux.
• https://wiki.fd.io/view/VPP/Segment_Routing_for_IPv6
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 48
SRv6 on VPP (by FD.io project)
Supported functions as of 2018/04/17
source: http://www.segment-routing.net/open-software/vpp/
46. SRv6 の実装例(オープンソース)
SRv6の現状と展望 | ENOG53@上越 | 2018/10/19 49
CLI for SRv6 on Linux (ENOG49で発表)
https://www.slideshare.net/kentaroebisawa/zebra-srv6-cli-on-linux-dataplane-enog49