home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1997 December
/
Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso
/
ietf
/
ip1394
/
ip1394-minutes-interim-97jul.txt
< prev
Wrap
Text File
|
1997-10-10
|
21KB
|
449 lines
INTERIM Meeting
IP over 1394 (ip1394) Working Group Meeting Minutes
July 8th and 9th, 1997
Hosted by Intel in Hillsboro, OR
Attendees:
Peter Johansson, Congruent Software, pjohansson@aol.com
Koichi Tanaka, Sony, Tanaka@sm.sony.co.jp
Michael Deacon, Samsung, mdeacon@mtc.samsung.com
Rudi Bloks, Philips, bloks@natlab.research.philips.com
Fernando Matsubara, Mitsubishi, fernando@nambc.mea.com
Jeffrey Burgan, IETF Representative, @Home Networks, burgan@home.net
Rajiv Choudhary, Intel, Rajiv_choudhary@ccm.jf.intel.com
Barbara Love, Hewlett Packard, barbara@rosemail.rose.hp.com
Shivaun Albright, Hewlett Packard, shivaun_albright@hp.com
Andy Henroid, Intel, Henroid_andrew@ccm.jf.intel.com
John Fuller, Microsoft, jfuller@microsoft.com
Dick Scheel, Sony, dicks@lsi.sel.sony.com
Dirk Brandewie, Intel, dirk@mink.intel.com
Kaz Honda, Sony, honda@sm.sony.com.jp
Izzat Izzat, Thomson CE, izzati@indy.tce.com
Myron Hattig, Intel, Myron_hattig@ccm.jf.intel.com
1.0 Summary
We started the meeting with introductions and the following agenda.
- Status of working group
- Review proposals
- Identify requirements of protocols
- Discuss architectural interaction document
- Define Async Unicast IP, ARP, and Async IP Broadcast
- Capture options for isoch/async IP multicast/broadcast
- Publish Interim meeting WG Draft to the reflector by July 18th,
incorporate comments from the reflector into the draft to be
submitted to IETF by July 30th.
Actual activities were
- Status of working group
- charter to be submitted to IESG July 11th.
- Mail Archive exists but are not accessible by people not on list.
- To retrieve archive send mail to listserv@mailbag.intel.com, no subject
msg of "get ip1394 LOGyymm" with yy="97","98", mm="01","02",.."12"
- Review proposals - Microsoft, DAVIC, Asynchronous Streaming
- Defined Async Unicast IP (Msg Queue or Pull), ARP (Async Stream),
and Async IP Broadcast (Async Stream), election algorithm for IP
Resource Manager.
- Discussed issues for isoch IP multicast/broadcast
Action Items
- Hattig to publish meeting minutes by July 11th.
- Johansson to publish WG draft by July 18th.
- Johansson to incorporate feed back on the reflector and submit
to IETF as a WG draft by July 30th. Interim doc will be posted on
symbios FTP site.
- Scheel, Honda, Johannson, Fuller, Bloks, Hattig, Brandewie to share
critical issues with IEEE p1394x (x=a,b,1), silicon, board, product
vendors, and software stack providers ASAP. Critical issus are:
- asynchronous streaming requirements - link chip and software APIs
- 512 buffer requirement of msg queue option for async IP unicast
- multiple Isoch talkers using same channel number during a single
isoch time cycle assuming appropriate bandwidth has been alloced
- Everyone to stay focused on Async IP Unicast, Async IP Broadcast,
and ARP, but help group develop understanding of IP Multicast.
- Everyone to consider implementation plans for when spec firms up.
2.0 Technical Results
We agreed that an IP subnet includes all 1394 buses connected
via 1394 bus bridges. We wish to support this concept until we
prove it cannot be supported.
We agreed MTU size is around 2048 (max size of S400 packet).
We agreed on a need for terminology. Did not agree on exact terms,
but during the meeting we used the following terms (mostly):
IP Packet = IP Header & IP Payload
1394 Packet = 1394 Header (Isoch or Async) and 1394 Payload
Link Fragment = The portion of an IP packet that is currently being
transmitted in a 1394 packet. If the entire IP packet
fits into a single 1394 packet, it is called a single
fragment packet (SFP). Begin of Packet (BOP), Continuation
of packet (COP), and End of Packet (EOP) are other
fragment types. The IP Packet header only exists in a
SFP or BOP link fragment.
This document will these terms.
Other technical results relate to the IP resource Manager,
Streaming (ARP, and Async IP Broadcast), ARP,
IP Unicast, IP Broadcast, and IP Multicast.
2.1 IP Resource Manager (new name needed)
This proposal was taken from postings on the reflector originating
from P. Johannson, and then by Kaz Honda & Kenji Fujisawa. Please
refer to the posting for details. Here is a brief summary.
At startup, a node becomes the IP resource manager according to
algorithm in proposal. The IP resource manager allocates a channel
number (but no bandwidth), then communicates the channel number to
all IP nodes on the bus. This single channel number is used for all
IP Asynchronous Broadcasts, all ARP request, and all ARP responses.
Other channels maybe allocated for many purposes which are to be
defined. Possibilities include Async IP Multicast, Isoch
IP Multicast. See IP Multicasting for more details.
The initial allocation of the single channel for ARP and Async IP
Broadcast is required for Asynchronous Streaming.
Note: make mod to proposal so a value in register indicates
if a node is IP capable.
2.2 Streaming
Asychronous Streaming is required for Async IP Broadcast and ARP.
Isochronous streaming may rely on
the IP resource manager and may be similar to async streaming
in many ways, but the group believes we should focus
on Async streaming first. This will give us an understanding of
streaming issues in general as well as time to learn more about
possibilities and requirement for isoch streaming over 1394.
Here we only discuss Async streaming for use of IP broadcast and ARP.
Async streaming sends an isochronous data block packet over
asynchronously arbitrated time cycle. The format of an isochronous
data block as shown in Figure 6-17 Page 155 of the IEEE 1394.1995
specification follows:
+-----------------+----------+--------------+------------+---------+
|data len(16 bits)|tag(2bits)|channel(6bits)|tcode(4bits)|sy(4bits)|
+-----------------+----------+--------------+------------+---------+
Async streaming requires link fragmentation to reassemble IP packets.
Encapsulation format of the BOP, COP, EOP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Seq Num (14 Bit) |Reassmbly ID (16 bits)|
+------------------+-----------------------+----------------------+
Encapsulation format of the SFP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Reserved (14 Bit) | EtherType (16 bits) |
+------------------+-----------------------+----------------------+
Frag Type = BOP=0x1, COP=0x3, EOP=0x2, SFP=0x0.
Reassmbly ID = may be senders Node ID, but receiver cannot use ID
for purposes other than packet reassembly.
Seq Num = increment every fragment - no start/reset value agreed.
Did agree that this is a simple method of error detection
which relies on further error detection at higher layers.
EtherType = same definition as LLC/SNAP EtherType field,
(e.g. IP = 0x800, ARP = 0x806)
Asynchronous streaming supports:
- One logical data stream from one source node per channel.
- One logical data stream from multiple serial sources per channel.
Asynchronous streaming does not support:
- Multiple logical data streams from one source node per channel.
Note: We need to investigate implementation issues with Async
streaming. Reportedly silicon supports such streams, but
software interfaces may not. Link chip up through several softare
interfaces (e.g. Microsoft 1394 WDM Class driver) need some
mechanism to support async streaming.
2.3 ARP
The format of the ARP response and ARP request follows:
+-------+----------+----------+----------+----------+
|quadlet| octet 1 | octet 2 | octet 3 | octet 4 |
+-------+----------+----------+----------+----------+
| 1 | HardwareType = 0x18 |ProtocolType = 0x800 |
+-------+---------------------+----------+----------+
| 2 |HW Len=16 |IPLen = 4 |OpCode=ArpRqs/ArpRsp |
+-------+---------------------+---------------------+
| 3 | Src World Wide Unique ID |
+-------+---------------------+---------------------+
| 4 | Src World Wide Unique ID (cont.) |
+-------+---------------------+---------------------+
| 5 | Src Node ID | Src Unicast Offset |
+-------+-------------------------------------------+
| 6 | Src Unicast Offset (cont.) |
+-------+---------------------+---------------------+
| 7 | Dst World Wide Unique ID |
+-------+---------------------+---------------------+
| 8 | Dst World Wide Unique ID (cont.) |
+-------+---------------------+---------------------+
| 9 | Dst Node ID | Dst Unicast Offset |
+-------+-------------------------------------------+
| 10 | Dst Unicast Offset (cont.) |
+-------+---------------------+---------------------+
Usage of WWUID, Node ID, and offset. We concluded that given the
range of possible implementations all fields (i.e. Node ID,
offset, and WWUID) may or may not be used. The final result is
that all fields must be in the ARP msg.
ARP uses the common channel number allocated by the
IP REsource manager on startup. That same channel number is written
to a register in all IP capable nodes. As stated earlier, this is
part of the Async Stream proposal.
Link Fragmentation is needed. ARP message must always use SFP
link fragments.
Encapsulation format of the SFP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Reserved (14 Bit) | EtherType (16 bits) |
+------------------+-----------------------+----------------------+
Frag Type = BOP=0x1, COP=0x3, EOP=0x2, SFP=0x0.
EtherType = same definition as LLC/SNAP EtherType field,
(e.g. IP = 0x800, ARP = 0x806)
2.4 IP Unicast
All work was related to Async IP Unicast; not Isoch IP unicast. We
agreed that Isochronous IP Unicast did not make sense. Three
methods of Async IP Unicast were discussed: Push Model,
Pull Model, and Msg Queue.
The Microsoft Proposal,or Push Model, was discussed.
The group concluded the Pull Model was fundamentally similar to the
Push in that both require memory space to be managed for
every source/destination pair. The Push model has memory on
destination with the IP packet being pushed (async write) to it.
The Pull model has memory on source with the IP packet
being pulled (async read) from it. The Pull Model better
addressed two issues:
- In the push model, it is believed memory management algorithms
would be easier and more robust if maintained on the sender.
- In the pull model, it is believed memory corruption may occur
by any node on the bus performing an async write into the
destination's memory. Pull model uses async read transactions.
We agreed there is not sufficient understanding of IP over 1394
usage to determine if Msg Queue or Pull Model is best. Here are
the descriptions of each followed by a compare/contrast. The
details of both proposals will be published by July 18th.
2.4.1 Msq Queue
Encapsulation format of the BOP, COP, EOP Link Fragment Headr follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Seq Num (14 Bit) |Reassmbly ID (16 bits)|
+------------------+-----------------------+----------------------+
Encapsulation format of the SFP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Reserved (14 Bit) | EtherType (16 bits) |
+------------------+-----------------------+----------------------+
Frag Type = BOP=0x1, COP=0x3, EOP=0x2, SFP=0x0
Reassmbly ID = may be senders Node ID, but receiver cannot use ID
for purposes other than packet reassembly.
Seq Num = increment every fragment - no start/reset value agreed.
Did agree that this is a simple method of error detection
which relies on further error detection at higher layers.
EtherType = same definition as LLC/SNAP EtherType field,
(e.g. IP = 0x800, ARP = 0x806)
Requires 1394.1995 max_rec to support 512 byte payload to prevent
retries from consuming a high percentage of bus bandwidth.
Notes:
- Fields in LLC/SNAP header are fixed except for EtherType; therefore,
there is no need for most of the LLC/SNAP hdr fields. EtherType
distinguishes between ARP and IP packets. This function is only
necessary in SFP link fragments; hence, it only exists in SFP
link fragment headers.
- Link Fragment Header is same format as ARP, Async IP Unicast, and
Async IP Broadcast.
- All 1394 packets are Async Writes.
- 1394 Packets are destined to Node ID and Offset returned in ARP
Response.
2.4.2 Pull Model
Notes:
- Sending an IP packet consists of the following steps:
- The IP packet is stored in the source's memory offset X.
- Source node tells destination to come get IP packet from
memory offset X,
- Destination node performs async reads to get data from offset X.
- Destination tells source I have the data.
- Memory offset X on source node is ready to send another IP packet
- Offset X is part of a data structure. The entire data structure
includes number of buffers, buffer lengths, max transfer size,
free buffer register, full buffer register, etc.
- The offset to identify the location of the data structure is the
offset returned in the ARP response.
2.4.3 Compare/Contrast MsqQue and Pull Model
Bandwidth Overhead
- MsgQue uses async write to transfer IP packet, Pull uses asyn read.
On S400 Interface async read uses 15 Mbps of bandwidth more than
Async write. (See P. Johansson for formula)
- The 4 byte link fragment header for MsgQue uses 4 Mbps of bandwidth
on S400 interface (See P. Johansson for formula). Pull has no link
fragment header.
- Net difference is Pull uses 11 Mbps more than MsgQue on S400.
"Out of Band" Communication
- Pull method has two additional 1394 async write packets
per IP packet transfer. MsgQue has no "out of band" communication.
Two 1394 async write packets are:
- one async write packet to tell destination to come get IP packet
- one async write packet to tell the sender to free the memory used
by IP packet.
Processing prior to transfer of IP Packet
- Both methods use ARP for initial gathering of info; polling Unit
Directies is not used by either method.
- Pull Method requires retrieving data structure with number of bufs,
buf lengths, max transfer size, etc. MsgQue has no such requirement.
Processing Overhead
- MsqQue requires assembly of fragments. Reassebmly processing
overhead is not required by the Pull method.
Below are the most problematic issues with each method (at least from
my interpretation of the group's discussion).
MsqQue:
- MsgQue has no flow control which will cause unwanted retires if
que fills. These retries may consume large percentages of bandwidth.
The method chosen to reduce the problem, but not eliminate it, is
to require a minimum queue size.
Pull Model:
- The Pull method has the sender reliant on the destination to behave
properly for transfer of IP packets. Specifically, the destination
must tell the sender it has completely transferred the IP packet
before the sender can reuse memory for the next IP packet. If there
is a single memory queue on the source for all destinations, then
a single slow or mis-behaving destination may congest all
transmissions. The sender may have multiple queues to alleviate the
problem, but the problem still exists.
2.5 IP Broadcast
We only discussed Async IP Broadcast. I think most of us assumed
there was not much need for isoch IP broadcast because isoch streams
are typically Audio or Video content, thus IP multicast would be
used. We still need more input on isoch IP broadcast.
Async IP Broadcast uses the common channel number allocated by the
IP REsource manager on startup. That same channel number is written
to a register in all IP capable nodes. As stated earlier, this is
part of the Async Stream proposal.
Link Fragmentation is needed.
Encapsulation format of the BOP, COP, EOP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Seq Num (14 Bit) |Reassmbly ID (16 bits)|
+------------------+-----------------------+----------------------+
Encapsulation format of the SFP Link Fragment Header follows:
+------------------+-----------------------+----------------------+
|Frag Type (2 bits)| Reserved (14 Bit) | EtherType (16 bits) |
+------------------+-----------------------+----------------------+
Frag Type = BOP=0x1, COP=0x3, EOP=0x2, SFP=0x0.
Reassmbly ID = may be senders Node ID, but receiver cannot use ID
for purposes other than packet reassembly.
Seq Num = increment every fragment - no start/reset value agreed.
Did agree that this is a simple method of error detection
which relies on further error detection at higher layers.
EtherType = same definition as LLC/SNAP EtherType field,
(e.g. IP = 0x800, ARP = 0x806)
2.5 IP Multicasting
We talked about IP multicast at some length. We had revelations about
IP as well as 1394, but no conclusions. Here is a bullet list topics
and issues discussed:
- There will probably be some mapping from IP multicast addresses
to channel numbers.
- The channel number may be an isoch or async stream. If no
bandwidth is allocate with the channel, then it may be async.
- There is no "in-band" mechanism to determine if an IP multicast
address is intended to be async or isoch.
- RSVP, Subnet Bandwidth Managment (SBM), or some other "out of band"
method may be used to map IP multicast isoch or asyn services.
- To ferrit out these issues, the group needs a clear understanding
of IP Multicast addresses, IGMP, RSVP, SBM, RTP, allocation of IP
Multicast addresses, and mapping of IP multicast addresses to
streams.
3. References of Interest taken from submission to reflector many of
these documents were available during the meeting.
[1] IEEE, "Standard for a High Performance Serial Bus", IEEE
1394-1995, 1995.
[2] IEEE P1394a WG, "Draft Standard for a High Performance Serial
Bus (Supplement)", P1394a Draft 0.09, June 1997.
ftp://ftp.symbios.com/pub/standards/io/1394/P1394a/Drafts/
P1394a09.pdf
[3] DAVIC, "DAVIC 1.2 specification Part7", March 1997.
ftp://monviso.alpcom.it/pub/Davic-Public/Spec1_2/prt07_12.doc
[4] Myron Hattig, "DAVIC 1.2 Baseline Document #41", January 1997.
[5] IEEE, "IEEE Standards for Local Area Networks: Logical Link
Control", IEEE, New York, New York, 1985.
[6] IEEE, "Sub Network Access Protocol", IEEE 802.1A.
[7] J. Reynolds, J. Postel, "ASSIGNED NUMBERS", RFC1700, October
1994.
[8] David C. Plummer, "An Ethernet Address Resolution Protocol",
RFC826, November 1982.
[9] IANA, "IANA Assignments",
http://www.iana.org/iana/assignments.html
ftp://ftp.isi.edu/in-notes/iana/assignments/arp-parameters
[10] Peter Johansson, "INTERNET PROTOCOL (IP) over IEEE 1394-1995"
Revision 1, proposal for IP1394 WG, June 1997
Text item: External Message Header
The following mail header is for administrative use
and may be ignored unless there are problems.
***IF THERE ARE PROBLEMS SAVE THESE HEADERS***.
To: IP1394@mailbag.jf.intel.com
Subject: WG meeting minutes
From: Myron Hattig <Myron_Hattig@CCM.JF.INTEL.COM>
Sender: IETF IP over 1394 Working Group <IP1394@mailbag.jf.intel.com>
Reply-To: IETF IP over 1394 Working Group <IP1394@mailbag.jf.intel.com>
Date: Fri, 11 Jul 1997 13:15:00 PDT
Message-ID: <Fri, 11 Jul 97 13:18:35 PDT_1@ccm.jf.intel.com>
Received: by ccm.jf.intel.com (ccmgate 3.2 #8) Fri, 11 Jul 97 13:18:35 PDT
Received: (from ccmgate@localhost) by relay.jf.intel.com (8.7.6/8.7.3) id
NAA12112 for ip1394@mailbag.intel.com; Fri, 11 Jul 1997 13:18:35
-0700 (PDT)
Received: from relay.jf.intel.com (relay.jf.intel.com [134.134.131.6]) by
mailbag.jf.intel.com (8.8.5/8.8.4) with ESMTP id NAA16680 for
<ip1394@mailbag.jf.intel.com>; Fri, 11 Jul 1997 13:20:55 -0700 (PDT)
Received: from MAILBAG.INTEL.COM by MAILBAG.INTEL.COM (LISTSERV-TCP/IP release
1.8c) with spool id 9361 for IP1394@MAILBAG.INTEL.COM; Fri, 11 Jul
1997 13:20:56 -0700
Received: from mailbag.jf.intel.com (mailbag.jf.intel.com [134.134.248.4])
by mailbag.jf.intel.com (8.8.5/8.8.4) with ESMTP
id NAA16688; Fri, 11 Jul 1997 13:20:57 -0700 (PDT)
Received: from mailbag.jf.intel.com (mailbag.jf.intel.com [134.134.248.4]) by re
lay.jf.intel.com (8.7.6/8.7.3) with ESMTP id NAA13211; Fri, 11 Jul 1997 13:25:18
-0700 (PDT)
Return-Path: IP1394@mailbag.jf.intel.com