Download - 06_tm3110eu01tm_0002_ip
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_00021
Contents
1 Generalities 3
2 IP-Datagram Structure 11
3 Exercise 37
4 Solution 41
IP Internet Protocol for GPRS
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_00022
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_00023
1 Generalities
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_00024
The Internet Protocol (IP) is designed for the use in interconnected systems ofpacket-switched computer communication networks. IP provides services fortransmitting blocks of datagrams from sources to destinations, where sources anddestinations are hosts identified by addresses of fixed length. IP also provides basicfacilities for fragmentation and reassemble of long datagrams and type of service,which means the quality of service of the data transmission. The two basic functionsof IP are addressing and fragmentation.
The internet modules on a transmission path use the addresses carried in theinternet header to transmit internet datagrams toward their destinations. Theselection of a path for transmission is called routing. The internet modules use fieldsin the internet header to fragment and reassemble internet datagrams whennecessary for transmission through "small packet" networks. The model of operationis that an internet module resides in each host engaged in internet communicationand in each gateway that interconnects networks. These modules share commonrules for interpreting address fields and for fragmenting and assembling internetdatagrams. In addition, these modules (especially in gateways) have procedures formaking routing decisions and other functions.
IP treats each internet datagram as an independent entity unrelated to any otherinternet datagram. There are no connections or logical circuits (virtual or otherwise)via the internet.
The Internet Protocol is specifically limited in scope, to provide the functionsnecessary to deliver a package of bits (an IP datagram) from a source to adestination host over an interconnected system of networks. There are nomechanisms to improve end-to-end data reliability, flow control, sequencing, or otherservices commonly found in host-to-host protocols. IP can capitalize on the servicesof its supporting networks to provide various types and qualities of service.
IP does not provide a reliable communication facility. There are no acknowledgmentsneither end-to-end nor hop-by-hop. There is no error control for data, only a headerchecksum. There are no retransmissions. There is no flow control.
Errors detected may be reported via the Internet Control Message Protocol (ICMP)which is implemented in the internet protocol module.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_00025
Connectionless datagram service
Addressing
Fragmentation and Reassembly
Type of Service
Tasks of IP
Fig. 1 Tasks of IP
End-to-End Data Reliability
Flow Control
Sequencing
Reliable Communication Facility
Acknowledgements
Error Control for Data
Retransmissions
No Mechanisms for:
Fig. 2 "Drawbacks" of IP
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_00026
The tasks of the physical and data link layer of OSI are provided by the networkaccess level in TCP/IP.
The three highest layer in OSI are combined in the application level of TCP/IP.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_00027
Physical
Data Link
Network
Transport
Session
Presentation
Transport
Internet
Network Access
ISO OSI Reference Model
Application
TCP/IP Architecture
Application
Fig. 3 ISO OSI 7 layer reference model versus TCP/IP architecture
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_00028
The figure on the right shows a more detailed view about the TCP/IP protocol stack.
ARP Address Resolution Protocol
FTP File Transfer Protocol
ICMP Internet Control Message Protocol
IGMP Internet Group Management Protocol
IPv4 Internet Protocol version 4
NFS Network File System
RARP Reverse Address Resolution Protocol
SMTP Simple Mail Transfer Protocol
TCP Transmission Control Protocol
TFTP Trivial File Transfer Protocol
UDP User Datagram Protocol
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_00029
Network
Device
Driver
Physical
Media
RARPARP
IP IGMPICMP
UDPTCP
NFSTFTPSMTPFTP Application
Transport
Network
Network
Interface
Fig. 4 TCP/IP architecture
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000210
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000211
2 IP-Datagram Structure
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000212
The IP headers size can range from 20 Bytes (when no options are included) to 64Bytes (when options and padding bits are included).
The following IP parameters belong to the header of a IP datagram:
IP Version and IP Header Length
Type of Service
Total Length
Identification, Flags and Fragment Offset
Time to Live
Protocol
Header Checksum
Source and Destination Addresses
Options and Padding bits (these are optional contents).
On the following pages a detailed descriptions explains the parameters.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000213
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 2 3 4 5 6 7 8 9 0 1
0 1 2 3
Version IHL Type of Service Total Length
Identification Flags Fragment Offset
Time to Live Protocol Header Checksum
Source Address
Destination Address
Options Padding
Data
20 b
yte
s
Fig. 5 IP datagram
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000214
The IP Version parameter indicates the version of the used internet protocol. At themoment, usually V4 is used.
The IP Header Length (IHL) indicates the length of the IP header in multiple of 32bits. The minimum IP header length is 20 Bytes, whilst the maximal IP header lengthis 64 octets.
If the option attributes are also contained, the IHL gives the length of the IP headerincluding the padding bits.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000215
IP Version
Versionnumber
Keyword Version
0 reserved
1-3 unassigned
4 IP Internet Protocol (i.e. IPv4)
5 ST ST datagram mode
6 SIP Simple Internet Protocol (i.e. IPv6)
7 TP/IX The next Internet
8 PIP The P Internet Protocol
9 TUBA TUBA
10-14 unassigned
15 reserved
Fig. 6 IP version
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000216
The Type of Service (TOS) provides an indication of the abstract parameters of thequality of service desired. These parameters are used to guide the selection of theactual service parameters when transmitting a datagram through a particularnetwork. Several networks offer service precedence, which somehow treats highprecedence traffic as more important than other traffic (generally by accepting onlytraffic above certain precedence at time of high load). The major choice is a threeway tradeoff between
low-delay
high-reliability
high-throughput
low cost.
The use of the Delay, Throughput, and Reliability indications may increase the cost(in some sense) of the service. In many networks better performance for one of theseparameters is coupled with worse performance on another. Except for very unusualcases at most two of these three indications should be set.
The network control precedence designation is intended to be used within a networkonly. The actual use and control of that designation is up to each network. The inter-network control designation is intended for use by gateway control originators only. Ifthe actual use of these precedence designations is of concern to a particularnetwork, it is the responsibility of that network to control the access to, and use of,those precedence designations.
Total Length is the length of the datagram, measured in octets, including internetheader and data. The parameter Total Length is contained in 16bits.
This field allows the length of a datagram of up to 65,535 octets. Such longdatagrams are practically not usable for most hosts and networks. The minimumrequirement for all hosts is, to accept datagrams of up to 576 octets (whether theyarrive completely or in fragments, i.e. in case of fragmentation, the Total Lengthindicates the size of the fragment). It is recommended that hosts only senddatagrams larger than 576 octets if they have assurance that the destination isprepared to accept the larger datagrams.
The number 576 is selected to allow a reasonable sized data block to be transmittedin addition to the required header information. For example, this size allows a datablock of 512 octets plus 64 header octets to fit in a datagram. The maximal internetheader is 60 octets, and a typical internet header is 20 octets, allowing a margin forheaders of higher level protocols.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000217
Bit Parameter Values
0-2 Precedence 111 - Network Control110 - Internetwork Control101 - CRITIC / ECP100 - Flash Override011 - Flash010 - Immediate001 - Priority000 - Routine
3 Delay (D) 0 = Normal Delay1 = Low Delay
4 Throughput (T) 0 = Normal Throughput1 = High Throughput
5 Reliability (R) 0 = Normal Reliability1 = High Reliability
6 Costs 0 = Normal Costs1 = Low Costs
7 Reversed forFuture Use
0 1 2 3 4 5 6 7
Precedence D RT C 0
bits
Fig. 7 Type of service
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000218
The Identification parameter is used to distinguish the fragments of one datagramfrom those of another datagram. The originating protocol module of an internetdatagram sets the identification field to a value that must be unique for that source-destination pair and protocol for the time the datagram will be active in the internetsystem. The originating protocol module of a complete datagram sets the fragmentoffset to zero in the first fragment and the More Fragments flag to zero if the lastfragment is transmitted.
Flags:
The flags are used to control the fragmentation of the IP datagram. Fragmentationmay be allowed (DF=0) or not (DF=1). The bit MF indicates (if fragmentation occurs)if further fragments have to be received later on (MF=1) or not (MF=0).
Bit Parameter Values
Bit 0: 0 reserved, must be zero
Bit 1 DF 0 = May Fragment
1 = Dont Fragment
Bit 2: MF 0 = Last Fragment
1 = More Fragments
Fragment Offset:
This field indicates where in the datagram this fragment belongs. The fragment offsetis measured in units of 8 octets (64 bits). The first fragment has offset zero.
More Fragments Flag Fragment Offset Description
1 0 First Fragment
1 >0 Middle Fragment
0 >0 Last Fragment
0 0 Only Fragment
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000219
Identification
16 bits
to ensure correct reassembly of fragments
Flags
controls fragmentation
Fragment Offset
13 bits
measures in 8 octets (64 bits) the offset of
the datagram fragment
DF0 MF
210
Fig. 8 Identification, flags and fragment offset
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000220
Fragmentation
The fragmentation of a datagram is necessary when the transport network is not ableto send the complete datagram in one frame. The IP fragmentation and reassemblyprocedures need to be able to split a datagram into an almost arbitrary number ofpieces that can be later reassembled by the remote node.
The receiver of the fragments uses the identification field to ensure that fragmentsof different datagrams are not mixed. So, the identification field is used to distinguishthe fragments of one datagram from those of another. The originating protocolmodule of an IP datagram sets the identification field to a value that must be uniquefor that source-destination pair and protocol for the time the datagram will be active inthe internet system.
The fragment offset field tells the receiver the position of a fragment in the originaldatagram. The fragment offset and length determine the portion of the originaldatagram covered by this fragment.
The more-fragments flag indicates (by being reset) the last fragment. Theinformation out of these fields is sufficient to reassemble datagrams correctly. Adatagram marked with the flag "don't fragment" is discarded in case the transportnetwork is not able to deliver it as one frame via the underlying physical layer.
The size limit of a datagram that can be transported by the transport network isknown as the Maximum Transmission Unit (MTU). For example, the Ethernetsystem has a maximum data size (MTU) of 1500 octets or X.25 of 128 octets.
To fragment an IP datagram, the IP module (for example in a gateway) creates twonew IP datagrams and copies the content of the IP header from the original datagraminto the IP header of the fragmented datagrams. The data of the original datagram isdivided into two portions on an 8 octet (64 bit) boundary (the second portion mightnot be an integral multiple of 8 octets, but the first must be).
The first portion of the data is placed in the first new IP datagram, and the total lengthfield is set to the length of the first datagram. The more-fragments flag is set to one.The fragmentation offset becomes the value 0.
The second portion of the data is placed in the second new IP datagram, and thetotal length field is set to the length of the second datagram. The more-fragments flagcarries the same value as the complete datagram, in our case the value 0. Thefragment offset field of the second new internet datagram is set to the value of thatfield in the complete datagram plus offset as number of data Bytes divided by 8.
This procedure can be generalized for an n-way split, rather than the two-way splitdescribed.
To assemble the fragments of an internet datagram, an internet protocol module (forexample at a destination host) combines internet datagrams that all have the samevalue for the four fields: identification, source, destination, and protocol. Thecombination is done by placing the data portion of each fragment in the relativeposition indicated by the fragment offset in the fragment's internet header. The firstfragment will have the fragment offset zero, and the last fragment will have the more-fragments flag reset to zero.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000221
ID:1234
Length: 1620
MF=0
Fragmentation
Offset:0
Length1600 Bytes
ID:1234
Length: 1500
MF=1
Fragmentation
Offset:0
Length1480 Bytes
ID:1234
Length: 140
MF=0
Fragmentation
Offset:185
Length
120 Bytes
Large IP
Datagram
Fragment 1
Fragment 2
Header Data
Fig. 9 Example for a fragmentation
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000222
The time to live field indicates the maximum time the datagram is allowed to remainin the internet system. If this field contains the value zero, then the datagram must bedestroyed. This field is modified in internet header processing. The time is measuredin units of seconds, but since every module that processes a datagram mustdecrease the TTL by at least one even if it process the datagram in less than asecond, the TTL must be thought of only as an upper bound on the time a datagrammay exist. The intention is to cause undeliverable datagrams to be discarded, and tobound the maximum datagram lifetime.
The Protocol parameter is an 8 bit parameter. It indicates the next level protocolused in the data portion of the internet datagram. RFC 1700 defines the values to beused in this field, but some of the more common protocols are shown on the rightfigure.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000223
Parameter Time to Live
Indicates the upper-bound lifetime of a datagram
8 bits
set by the sender
reduced on hop-to-hop basis
datagram is destroyed when the TTL = 0
Fig. 10 Time to live
Decimalvalue
Keyword Protocol
0 Reserved
1 ICMP Internet Control Message
2 IGMP Internet Group Management
3 GGP Gateway-to-Gateway
4 IP IP in IP (encasulation)
6 TCP Transmission Control
8 EGP Exterior Gateway Protocol
17 UDP User Datagram
29 ISO-TP4 ISO Transport Protocol Class 4
45 IDRP Inter-Domain Routing Protocol
46 RSVP Reservation Protocol
70 VISA VISA Protocol
80 ISO-IP ISO Internet Protocol
83 VINES VINES
88 IGRP IGRP (CISCO)
92 MTP Multicast Transport Protocol
94 IPIP IP-within-IP Encapsulation Protocol
95 MICP Mobile Internetworking Control Pro.
97 ETHERIP Ethernet-within-IP Encapsulation
Fig. 11 Protocol
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000224
The Header Checksum provides a verification that the information used inprocessing internet datagram has been transmitted correctly. The data may containerrors. If the header checksum fails, the internet datagram is discarded at once bythe entity which detects the error.
The checksum is build on the header only. Since some header fields change (e.g.time to live), the checksum is recomputed and verified at each point where theinternet header is processed.
The checksum algorithm calculates as follows: the checksum field is the 16 bitone's complement of the one's complement sum of all 16 bit words in the header. Forpurposes of computing the checksum, the value of the checksum field is zero. This isa simple to compute checksum and experimental evidence indicates it is adequate,but it is provisional and may be replaced by a CRC procedure, depending on furtherexperience.
Source IP address
The IP address of the sender of the IP datagram (32 bits).
Destination IP address
The IP address of the host to which this datagram is to be sent (32 bits).
For better readability the values of the address fields are written in dotted decimalmanner. Each dot represents the border of an octet.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000225
Header Checksum
Verifies that the datagram has been sent correctly
16 bits
calculated only over the header
Verified and recomputed on hop-by-hop basis
if header checksum fails, datagram is discarded
Fig. 12 Header checksum
Source Address: 32 bits
Destination Address: 32 bits
Dotted decimal notation, (e.g. 195.24.1.2)
Hexadecimal: 0x C3 18 01 02
0 31
Example of an IP address:
1100 0011 0001 1000 0000 0001 0000 0010
Fig. 13 Address parameters
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000226
Address classes
5 types of Address classes are defined which cover different address ranges:
Class Address Range
A 000.000.000.000 - 127.255.255.255
B 128.000.000.000 - 191.255.255.255
C 192.000.000.000 - 223.255.255.255
D 224.000.000.000 - 239.255.255.255
E 240.000.000.000 - 255.255.255.255
To provide for flexibility in assigning addresses to networks and allow for the largenumber of small to intermediate sized networks the interpretation of the address fieldis coded to specify a small number of networks with a large number of host, amoderate number of networks with a moderate number of hosts, and a large numberof networks with a small number of hosts. In addition there is an escape code forextended addressing mode.
A value of zero in the network field means that network. This is only used in certainICMP messages. The extended addressing mode is undefined. Both of thesefeatures are reserved for future use.
The local address, assigned by the local network, must allow for a single physicalhost to act as several distinct internet hosts. That is, there must be a mappingbetween internet host addresses and network/host interfaces that allows severalinternet addresses to correspond to one interface. It must also be allowed for a hostto have several physical interfaces and to treat the datagrams from several of themas if they were all addressed to a single host.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000227
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 90 1 2 3 4 5 6 7 8 9 0 1
0 1 2 3
0 Network ID Host ID
1 0 Network ID Host ID
1 1 0 Network ID Host ID
Class A
Class B
Class C
1 11 0 Host group addressClass D
1 1 1 1 Reserved for experimental protocolClass E
Fig. 14 Address classes
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000228
Option
The options, as the name says, are an optional part in IP datagrams. The functionmust be implemented in all IP modules (host and gateways). The option field isvariable in length. There may be zero or more options. We distinguish two cases forthe format of an option:
A single octet of option-type.
An option-type octet, an option-length octet, and the actual option-data octets.
The option-length octet counts the option-type octet and the option-length octet aswell as the option-data octets.
The End of Option indicates the end of the option list. This might not coincide withthe end of the internet header according to the internet header length. The field maybe copied, introduced, or deleted on fragmentation, or for any other reason.
The No Operation Option may be used between options, for example, to align thebeginning of a subsequent option on a 32 bit boundary. It may be copied, introduced,or deleted on fragmentation, or for any other reason.
The Security Option provides a way for hosts to send security, handling restrictions,and TCC (closed user group) parameters. This field must be copied onfragmentation. This option appears at most once in a datagram.
The Loose source and record route (LSRR) Option provides a means for thesource of an internet datagram to supply routing information to be used by thegateways in forwarding the datagram to the destination, and to record the routeinformation.
The Strict Source and Record Route (SSRR) Option provides a means for thesource of an internet datagram to supply routing information to be used by thegateways in forwarding the datagram to the destination, and to record the routeinformation.
The Record Route Option provides a means to record the route of an internetdatagram.
The Stream Identifier Option provides a way for the 16-bit SATNET streamidentifier to be carried through networks that do not support the stream concept.
The Internet Timestamp Option permits to accumulate Timestamps of all Gateways(optional with IP address), or a subset of them.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000229
Options
Option Type
Option Number
End of Option
No Operation
Security
Loose Source
Strict Source
Record Route
Stream Identifier
Internet Timestamp
Fig. 15 Options
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000230
On the right figure, there is an example for an IP header.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000231
Vers.=4 IHL=5 Type of Service Total Length=112
Identification=0Flag
=2Fragment Offset=0
Time to Live=64 Protocol=6 Header Checksum
Source Address = 255.255.0.1
Destination Address = 17.34.0.68
Data
Fig. 16 Example internet header
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000232
The figure on the right shows the transmission plane for GPRS.
IP is used for
end-to-end traffic between the mobile subscriber and the Internet Service Providerand for
routing the user packets between GGSN and SGSN on the Gn interface, as well asto the internet service provider on the Gi interface.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000233
xGSN
MS BSS SGSNGbUm Gn Gi
GSM RF
MAC
RLC
LLC
SNDCP
IP
Appli-cation
Frame
Relay
RFC
1490
IP
Appli-
cation
GGSN ISP
BSS
SIEMENS
NIXDORF
RFC
1490
IP
UDP/
TCP
GTP
Frame Relay
RFC
1490
IP
IP
Relay
Frame
Relay
Network
Service
BSSGP
GSM RF
MAC
RLC
Relay
Frame Relay
Network
Service
BSSGP
LLC
SNDCP
RFC
1490
IP
UDP/
TCP
GTP
Relay
Fig. 17 GPRS transmission plane
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000234
The figures on the right show examples the principal usage of IP on the interfaces Gband Gi.
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000235
FTP Data
FTP DataTCP
Header
TCP DataIP
Header
IP DataSN-Data SNDCP Frame
IP Datagram
TCP Segment
SNDCP message
IP Protocol
TCP Protocol
Fig. 18 IP at the Gb-interface
FTP Data
FTP DataTCP
Header
TCP DataIP
Header
IP DataRFC
1490
IP Datagram
TCP Segment
Frame Relay
IP Protocol
TCP Protocol
FTP Client
Frame
RelayCRC
Fig. 19 IP at the Gi-interface
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000236
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000237
3 Exercise
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000238
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000239
Exercise
1. What is the min/max length of a datagram?
2. Which flag has to be set when fragmentation is not allowed?
3. What is the Maximum Transmission Unit when the transport network is FrameRelay?
4. To which class of address belongs the following address: 195.12.12.12?
5. Which GPRS Interfaces are based on IP?
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000240
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000241
4 Solution
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000242
-
IP Internet Protocol for GPRS Siemens
TM3110EU01TM_000243
Solution
1. What is the min/max length of a datagram?
Minimum 576 Bytes / maximum 65.535 Bytes
2. Which flag has to be set when fragmentation is not allowed?
DF-flag set to one means "Don't fragment"
3. What is the Maximum Transmission Unit when the transport network is FrameRelay?
1600 Bytes
4. To which class of address belongs the following address: 195.12.12.12?
Class C
5. Which GPRS Interfaces are based on IP?
The Gb- and Gn/Gi-interface
-
Siemens IP Internet Protocol for GPRS
TM3110EU01TM_000244
IP Internet Protocol for GPRSGeneralitiesIP-Datagram StructureExerciseSolution