I want to add my to cents to the other answers. My understanding of session layer (and presentation layer) in TCP/IP is that it is very hard to design a single session layer for any application that can be sent over the Internet. If you take a certain class of applications - e.g., in VoIP there is a concept of what a session layer is. Also for some reason, some sources say that TLS is a session layer, although I think the only reason is that TLS works "above" layer 4, so it must be layer 5 ><.
Now, to the other part of your question. Basically session would be similar to connection in a sense that it is results in state maintained at the communicating systems. I will try to explain the concept of connection.
Connection (between two systems A and B) is essentially a state maintained at both A and B. You obviously can't store anything in the wires, so it has to be in the systems attached to the wires. Which systems these are, depends on the protocol. In TCP/IP protocols, connections can exist at some data link layers (e.g., wifi between AP and wireless device) or in transport layer (e.g., TCP between two end-systems). In circuit switched networks, there is layer 3 state, which is maintained at each host between sender and receiver as well.
Now, how this state comes to be. Let's take TCP as example. One of the systems, let's call it initiator, decides to initiate a connection to the responder. At the initiator the state is created locally - e.g., open a TCP socket, which signals the OS to open a connection to the responder. The state is however incomplete, because the responder does not know of the connection yet. Thus, the first step is that the initiator signals the responder that it wishes to start the connection. In TCP this is the task of TCP handshake. TCP handshake are TCP packets with special meaning. First thing that the initiator does is to send SYN packet. This TCP packet is encapsulated into an IP datagramm, which is encapsulated into data link frame, which can be sent over physical layer as bits. It travels to the responder as any other IP datagram would. At the responder the SYN packet is processed layer by layer: first physical/data link layer, then IP layer, then transport layer. When the SYN packet reaches transport layer, if the responder is accepting connections on that port, the packet will be processed and the corresponding state will be created as well[1]. The other two handshake packets are sent similarly, and the data packets are sent similarly.
So, in TCP there are special signalling packets, that have special meaning to TCP layer and are opaque to the layers below. These signalling packets are used to establish or tear down the connection. They are sent by lower layers as any other packets. The connection state at the initiator and responder is created by exchanging signalling packets and does not exist until signaling takes place.
In any connection oriented protocol there is a similar signalling mechanism for the sole purpose of establishing the connection - i.e., establishing state on connection endpoints (and on each of the other systems involved).
[1] This is not exactly true. Although the responder can create state at this point, it is usually done after the third handshake packet, as a defense against so called SYN flood attack.