The article currently says
IP was the connectionless datagram service in the original Transmission Control Program introduced by Vint Cerf and Bob Kahn in 1974, which was complemented by a connection-oriented service that became the basis for the Transmission Control Protocol (TCP). The Internet protocol suite is therefore often referred to as TCP/IP.
If "the original Transmission Control Program introduced by Vint Cerf and Bob Kahn in 1974" refers to the "Transmission Control Program" in "A Protocol for Packet Network Intercommunication", that paper appears to discuss a single protocol that incorporates packet forwarding, segmentation/desegmentation, and end-to-end reliability functions. I'm not sure whether that protocol was intended to be used by hosts communicating with packet switches, with the switches possibly using an unrelated protocol to route packets from the switch to which the packet was delivered by the sending host to the switch that should deliver the packet to the receiving host.
Jon Postel, in IEN 2, says
We are screwing up in our design of internet protocols by violating the principle of layering. Specifically we are trying to use TCP to do two things: serve as a host level end to end protocol, and to serve as an internet packaging and routing protocol. These two things should be provided in a layered and modular way. I suggest that a new distinct internetwork protocol is needed, and that TCP be used strictly as a host level end to end protocol. I also believe that if TCP is used only in this cleaner way it can be simplified somewhat. A third item must be specified as well -- the interface between the internet host to host protocol and the internet hop by hop protocol.
In the introduction, Postel says
This memo suggests an approach to protocols used in internetwork systems somewhat different from the main thrust of the work on the Transmission Control Protocol (TCP) [1].
[1] is "Cerf, V. "Specification of TCP version 2," March 1977", which is presumably IEN 5 (probably added as an IEN after IEN 2 was written, given that the date on IEN 5 is earlier than the date of IEN 2). That paper does separate the "internetwork header" and the "TCP header", with the internetwork header having a 4-bit "Format" field indicating whether the packet is a "Raw internet packet", a TCP packet, a "Secure TCP" packet, or an "Internet debugger (XNET)" packet, with the other values reserved. The part of the header that ends with the "Format" field is somewhat like an IP header, with the "Format" field being a "next protocol" field, with what comes after it with a TCP packet being somewhat like a TCP header. So there was some notion of a split between IP and TCP functions, albeit without explicitly layering the protocols in the TCP/IP sense.
The 1974 Cerf/Kahn paper doesn't give as much detail as "Specification of TCP version 2" does, so I'm not sure how much separation of function there was in that paper, and there doesn't seem to be any protocol split there.
So at what point was there an "IP", separate from "TCP"? Guy Harris (talk) 05:50, 11 January 2022 (UTC)
- I found and added the following to Internet protocol suite#History: "In version 3 of TCP, written in 1978, the Transmission Control Program was split into two distinct protocols, the Internet Protocol as connectionless layer and the Transmission Control Protocol as a reliable connection-oriented service.[1]" There's some further history at Transmission_Control_Protocol#Historical_origin, History_of_the_Internet#TCP/IP and Protocol_Wars#DoD_model_vs_X.25_and_proprietary_standards. Whizz40 (talk) 11:18, 11 January 2022 (UTC)