From owner-freebsd-net@freebsd.org Sun Jan 19 08:07:09 2020 Return-Path: Delivered-To: freebsd-net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6D9B91F090E for ; Sun, 19 Jan 2020 08:07:09 +0000 (UTC) (envelope-from vas@sibptus.ru) Received: from admin.sibptus.ru (admin.sibptus.ru [IPv6:2001:19f0:5001:21dc::10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 480nT84SVWz405r; Sun, 19 Jan 2020 08:07:08 +0000 (UTC) (envelope-from vas@sibptus.ru) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sibptus.ru; s=20181118; h=In-Reply-To:Message-ID:Subject:To:From:Date; bh=RerxGJD2d0R+6LFv5AUP98fLo+vAe3ODnGD1LN/E1X0=; b=mkxISVGNoiKnRFdE+9u422+Dc2 +dAuat9nIzBgR0nBOQM1SdNbarL1wsNKpx1E3PqvgTZ6xxjkQR9jstS6IsOazstkIq5yXCtO9Bo1I SXPRBSXdSF3osbgfoF19TKe4fZxEiTY47SIGvTE+CzFmplrRfw4YZD3lXYt4bjeGtfAU=; Received: from vas by admin.sibptus.ru with local (Exim 4.92.3 (FreeBSD)) (envelope-from ) id 1it5bv-000Gzf-5K; Sun, 19 Jan 2020 15:07:07 +0700 Date: Sun, 19 Jan 2020 15:07:07 +0700 From: Victor Sudakov To: Julian Elischer Cc: Eugene Grosbein , freebsd-net@freebsd.org, "Andrey V. Elsukov" , Michael Tuexen Subject: Re: IPSec transport mode, mtu, fragmentation... Message-ID: <20200119080707.GB63055@admin.sibptus.ru> References: <20200116155305.GA465@admin.sibptus.ru> <55f7bafa-24c4-9810-0d21-f82cb332ee2d@grosbein.net> <20200116160745.GA1356@admin.sibptus.ru> <72355e03-1cf8-c58f-3aec-b0a21e631870@grosbein.net> <20200117093645.GA51899@admin.sibptus.ru> <70b0b855-189b-03c2-0712-fc1e35640702@grosbein.net> <20200119033843.GB54797@admin.sibptus.ru> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Y7xTucakfITjPcLV" Content-Disposition: inline In-Reply-To: <20200119033843.GB54797@admin.sibptus.ru> X-PGP-Key: http://admin.sibptus.ru/~vas/ X-PGP-Fingerprint: 10E3 1171 1273 E007 C2E9 3532 0DA4 F259 9B5E C634 X-Rspamd-Queue-Id: 480nT84SVWz405r X-Spamd-Bar: -------- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=sibptus.ru header.s=20181118 header.b=mkxISVGN; dmarc=pass (policy=none) header.from=sibptus.ru; spf=pass (mx1.freebsd.org: domain of vas@sibptus.ru designates 2001:19f0:5001:21dc::10 as permitted sender) smtp.mailfrom=vas@sibptus.ru X-Spamd-Result: default: False [-8.43 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[sibptus.ru:s=20181118]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+mx:c]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; IP_SCORE(-3.33)[ip: (-9.89), ipnet: 2001:19f0:5000::/38(-4.94), asn: 20473(-1.78), country: US(-0.05)]; RCPT_COUNT_FIVE(0.00)[5]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[sibptus.ru:+]; DMARC_POLICY_ALLOW(-0.50)[sibptus.ru,none]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:20473, ipnet:2001:19f0:5000::/38, country:US]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 19 Jan 2020 08:07:09 -0000 --Y7xTucakfITjPcLV Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Victor Sudakov wrote: > Julian Elischer wrote: > > >=20 > > > > Back to the point. I've figured out that both encrypted (in transpo= rt > > > > mode) and unencrypted TCP segments have the same MSS=3D1460. Then I= 'm > > > > completely at a loss how the encrypted packets avoid being fragment= ed. > > > > TCP has no way to know in advance that encryption overhead will be > > > > added. >=20 > > Using multiple routing tables we could add a mechanism to the ipsec > > code so that encapsulated sessions are referred to one routing table > > and that the "envelope" routes are referencing another (specified in > > ipsec setup) routing table.=A0 The two routing tables would have differ= ent > > MTUs.=A0 This mechanism/framework would also be useful for other > > tunneling protocols in general. >=20 > I think before inventing something so innovative and clever, we should > look at how IPSec transport mode and MTU adjustment is implemented in > other OSes (OpenBSD, Linux, even Windows). Any experts? Maybe I've created much ado about nothing? In *transport* mode, the packet payload above the IP level (TCP+FTP in our case) is replaced by the encrypted payload.=20 Probably this transformation should not cause any increase in payload size because AFAIK a symmetric cipher does not increase the message size (i.e. the encrypted message is not bigger than the cleartext). OTOH, there is added information is the 4 bytes of SPI and 4 bytes of ESP sequence number, correct? So the payload should grow 8 bytes. Is this enough to make the packet too large? --=20 Victor Sudakov, VAS4-RIPE, VAS47-RIPN 2:5005/49@fidonet http://vas.tomsk.ru/ --Y7xTucakfITjPcLV Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJeJA4rAAoJEA2k8lmbXsY0qn8H/jE6j++Ao5EMJ08Ua1E2traK sHGFawL0Buzu7q8t5M+/gJN74VOM1ufH3mXEDYmPWjkGs+3ow/xks1Uaaz/AGzr5 Fa1p33HEyWGeWvkl26wkJB0pRtJrF5XtBrJUnC895pY31SnTzU14k08IKoI9jvnn S4qdVQBVcQqdJB0TTzV5nMKsy9s4k/WqsNE0rmMQ04+ZcTMWe8MEK5oYm4vpQewD emDzJ4eHzI7Z4S8j87IhCIRv9ydlgMTH+K9tZWV4J9XZCPtpJgJnQ0Wo3FdeZbyu FyYW+HPk7D0M7L+EirYaJqGSJ7DG4evFhYelOpgohAiGQQfX5mj5DgyjXAICfP4= =eJpe -----END PGP SIGNATURE----- --Y7xTucakfITjPcLV--