17 Commits

Author SHA1 Message Date
Carmelo Cascone
f2a5ea6a87 Fixed bug in P4_16 programs that was making bmv2 crash
Change-Id: Ia5057b3080e55610605908cd36b399db6c50c545
2017-09-15 00:00:57 +00:00
Carmelo Cascone
eb01812052 Updated P4_16 sample programs to reflect HW testbed
Change-Id: I9d76c9bc7632760cd9af1a3a431856291903eaf9
2017-09-06 16:27:06 +00:00
Yi Tseng
60ef61d52c Avoid the P4 compiler put ecmp_group_id to scalars meta
Change-Id: I4a5e71d75a4e13de645ea800afcda22988e0e728
2017-08-30 00:50:37 +00:00
Carmelo Cascone
b605cf0248 Drop packets on table miss in default.p4
Also fixed compiler warnings.

Change-Id: Ibbc6eee9bbd55f55e46fd5268a2dc206f04f14ea
2017-08-24 13:31:35 +02:00
Carmelo Cascone
fc3776dbc7 Fixed building of P4_14 test programs
Also checked in p4c compilation result (BMv2 JSON and p4info)

Change-Id: If1d2426e6ff275c01f63b3e300acd2b48197aa99
2017-08-22 09:38:51 +00:00
Yi Tseng
b62509b6c5 [ONOS-6904] Add ecmp feature to default.p4
Change-Id: I3837b3cc8d931dece030ab30bd4d15a7031fb646
2017-08-21 11:57:14 -07:00
Brian O'Connor
a09fe5b0b7 Updating Copyright line to Open Networking Foundation
Change-Id: Icba96d7f39a065b53f34a6aeb71afd1f7d51f774
2017-08-03 21:12:30 -07:00
Carmelo Cascone
2cad9efec5 Various fixes to get a P4Runtime demo that works
Change-Id: Icab512fceeb6ec0faf1b402c1e325e055cdb2caf
2017-08-03 16:17:58 +02:00
Carmelo Cascone
4e59382ecd Workaround to p4c/BMv2 parser bug
Start parser is configured to switch on ingress_port value 0xff, while
BMv2 uses byte-aligned ingress_port value (9 bit -> 16 bits), i.e.
0x00ff.

Change-Id: I8c9ab36675e7048ca3182582a97a90cc366d2743
2017-07-31 12:53:51 +00:00
Carmelo Cascone
c8d3486a1a Added copyright header to demo P4 programs
Change-Id: Ifa5c80db6cffae56e3666a60f3c0f40d456f443c
2017-07-31 12:36:55 +00:00
Carmelo Cascone
3304fd54e5 Removed unused metadata from demo P4 programs
Change-Id: Ie50dd70ee6172fe6c77f8ce6e6be136db282219e
2017-07-31 12:27:39 +00:00
Carmelo Cascone
b2e3dbaef0 Pi classes to support P4Runtime action profiles
+ modified default.p4 with ECMP capabilities (via action profiles)
+ sketched translation logic of ONOS groups (in Bmv2GroupProgrammable)
+ replaced existing instances of default.json/p4info with symlinks to
	p4src build directory (to avoid inconsistencies)

Change-Id: If82f0b8ce296c9b616415d99864d216b77645a87
2017-07-28 16:01:31 +00:00
Carmelo Cascone
837e645330 ONOS-6769 Support for PacketMetadata in demo P4 programs
Change-Id: I9b3de719f9eb1c87d1df16a5ad0d08a83cebc8f6
2017-07-21 00:33:31 +00:00
Andrea Campanella
fc1d34ca16 [ONOS-6809] Implementation for packet out in p4Runtime
Change-Id: I873a1fd18529fe9fd41aa33f862298892ece7d1c
2017-07-20 20:24:17 +00:00
Yi Tseng
2162993bee [ONOS-6596] Port example P4 programs from P4_14 to P4_16
Change-Id: I74485ea66894b425fa9f6508a67cb38dbef85a4f
2017-06-15 08:35:02 +00:00
Carmelo Cascone
b752427548 ONOS-6457 Improved bmv2.py mininet script
- Starts BMv2 with empty.p4 as when running with --no-p4 the switch
  crashes
- Automatically send a netcfg JSON to ONOS for each device
- Makefile to build all P4 programs (needed for empty.p4)

Change-Id: Ib872641751c543aac6c752610b1ce88a1a00d0d2
2017-06-06 12:48:02 +00:00
Carmelo Cascone
4f01102a66 P4 source files for BMv2 demo
Change-Id: I3adc57eb346e3cb34f17d54b82505d2d9e89b4ad
2017-06-05 15:07:10 +00:00