From: David Laight <David.Laight@ACULAB.COM>
To: 'Xie He' <xie.he.0141@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
"linux-x25@vger.kernel.org" <linux-x25@vger.kernel.org>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Martin Schiller" <ms@dev.tdt.de>
Subject: RE: [PATCH net-next] net: x25: Remove unimplemented X.25-over-LLC code stubs
Date: Thu, 10 Dec 2020 09:14:36 +0000 [thread overview]
Message-ID: <3e7fb08afd624399a7f689c2b507a01e@AcuMS.aculab.com> (raw)
In-Reply-To: <CAJht_EMQFtR_-QH=QMHt9+cLcNO6LHBSy2fy=mgbic+=JUsR-Q@mail.gmail.com>
From: Xie He
> Sent: 09 December 2020 22:54
>
> On Wed, Dec 9, 2020 at 1:21 PM David Laight <David.Laight@aculab.com> wrote:
> >
> > I always wondered about running Class 2 transport directly over LLC2
> > (rather than Class 4 over LLC1).
> > But the only LLC2 user was netbios - and microsoft's LLC2 was broken.
> > Not to mention the window probing needed to handle systems that
> > said they supported a window of (IIRC) 15 but would discard the
> > 5th back to back frame.
>
> To me, LLC1 and LLC2 are to Ethernet what UDP and TCP are to IP
> networks. I think we can use LLC1 and LLC2 wherever UDP and TCP can be
> used, as long as we are in the same LAN and are willing to use MAC
> addresses as the addresses.
Except that you don't have any where near enough 'ports' so you need
something to demultiplex messages to different applications.
We (ICL) always ran class 4 transport (which does error recovery)
directly over LLC1 using MAC address (a NUL byte for the network layer).
This requires a bridged network and globally unique MAC addresses.
Sending out an LLC reflect packet to the broadcast MAC address used to
generate a couple of thousand responses (many would get discarded
because the bridges got overloaded).
> X.25 layer 3 certainly can also run over LLC2.
You don't need X.25 layer 3.
X.25 layer 2 does error recovery over a point-to-point link.
X.25 layer 3 does switching between machines.
Class 2 transport does multiplexing over a reliable lower layer.
So you normally need all three.
However LLC2 gives you a reliable connection between two machines
(selected by MAC address).
So you should be able to run Class 2 transport (well one of its
4 variants!) directly over LL2.
The advantage over Class 4 transport over LLC1 is that there is
only one set of retransmit buffers (etc) regardless of the number
of connections.
But this is all 30 year old history...
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
next prev parent reply other threads:[~2020-12-10 9:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-09 3:33 [PATCH net-next] net: x25: Remove unimplemented X.25-over-LLC code stubs Xie He
2020-12-09 21:21 ` David Laight
2020-12-09 22:53 ` Xie He
2020-12-10 9:14 ` David Laight [this message]
2020-12-10 10:17 ` Xie He
2020-12-10 22:34 ` David Laight
2020-12-13 1:20 ` patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3e7fb08afd624399a7f689c2b507a01e@AcuMS.aculab.com \
--to=david.laight@aculab.com \
--cc=davem@davemloft.net \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-x25@vger.kernel.org \
--cc=ms@dev.tdt.de \
--cc=netdev@vger.kernel.org \
--cc=xie.he.0141@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).