Comparing the Real-Time Performance of Windows NT to an NT Real-Time Extension

Total Page:16

File Type:pdf, Size:1020Kb

Comparing the Real-Time Performance of Windows NT to an NT Real-Time Extension Comparing the Real-time Performance of Windows NT to an NT Real-time Extension Kevin M. Obenland, Tiffany Frazier, Jin S. Kim, John Kowalik The MITRE Corporation, 1820 Dolley Madison Blvd. McLean, VA 22102 Contact: [email protected] Abstract Despite its shortcomings there are several efforts under- Because of the dominance of Microsoft® Windows® in the way to use NT as-is for real-time systems[6][7][8]. These efforts are motivated by the low cost of using NT based PC market there is a strong interest in using Windows NT® systems as well as the stability of the Windows Application as a platform for real-time process and control systems. Programming Interface (API)[9]. In this paper we quantify This type of solution is very cost effective because factors that determine under what conditions it makes applications and development tools are widely available. sense to use NT for real-time processing. However, Windows NT was designed as a general purpose Another alternative, that still allows the use of NT operating system and optimizes average not worst case COTS, is to add a real-time extension to NT[10]. This performance. In this paper we investigate two methods for extension is essentially a separate real-time operating sys- bring real-time process and control systems to NT based tem. In this Dual-OS architecture all real-time processing is platforms. We first evaluate NT as-is, using a series of real- performed under the real-time OS, and NT handles the non time benchmarks, and show that NT use in real-time time critical processing. In this system all NT COTS still systems is limited to soft real-time systems where there is run out-of-the-box. Therefore development time and cost low system load. The second approach for developing NT are still kept to a minimum. In the last several years a num- based real-time systems is to add a real-time extension to ber of vendors have produced products that follow this NT. We evaluate one such product, INtime® from RadiSys approach. These include the products: INtime® from Radi- and conclude that, even under a heavy system load, hard Sys[11], RTXTM from VenturCom[12][13], and Hyperker- real-time determinism is possible. nelTM from Imagination Systems[14]. In this paper we 1 Introduction evaluate one of these products, INtime, and show that it is significantly more deterministic than NT alone. The Windows suite of operating systems, Windows There have been several previous studies which evalu- 95®/98® and Windows NT®, dominate the personal com- ated the real-time performance of NT and/or NT extension puter operating system market[1]. Because of this large products[6][7][8][15][16][10][17]. However, in this paper market there is a vast amount of affordable Commercial off we provide a direct and unbiased comparison between the the Shelf (COTS) software products available for these two approaches. Many of the previous performance evalua- operating systems. The popularity of Windows also makes tions were performed by the manufacturers themselves. it desirable to use it in other types of systems like real-time Another key factor, that we examine in detail, is the issue process and control systems. Windows NT is the most of system load. We find that the determinism of NT is sig- robust of all the Windows operating systems and it is there- nificantly worse when considering a load. However, the fore the most likely candidate for use in real-time systems. determinism of processes running under the INtime real- Using Windows NT allows these systems to utilize low time extension are relatively unaffected by a system load. cost COTS software and increases the user friendliness of the system because they look and feel more like the per- 2 Evaluating real-time OS behavior sonal computer environment. Because of these market forces, the use of Windows has also been mandated by var- The correctness of a calculation performed by a real- ious agencies within the Department of Defense[2][3][4]. time system is determined by its ability to satisfy time con- Unfortunately NT was designed as a general purpose straints as well as its ability to operate error free[18]. In this operating system not a real-time one[5]. It was designed to paper we consider only real-time systems that are based on optimize average performance and not worst case perfor- COTS operating systems which means that it is impossible mance as is required of any real-time operating system. to analyze all possible paths in an application. The use of COTS also means that our analysis must be stochastic, amount of time and then calculates the actual sleep time based on data gathered empirically, rather than mathemati- using the Pentium performance counter. The jitter is the cal. We note, however, for complex hard real-time systems difference between the actual and desired sleep durations. (such as those deployed by the Department of Defense) The response benchmark tests the ability of a system to stochastic analysis is the technique generally used to verify perform a fixed amount of processing in a deterministic critical timing requirements. amount of time. The test repeats simple operations—such as floating point additions, block memory copies, or disk 2.1 Real-time operating systems write operations—for a base case duration of approxi- mately 10 milliseconds. The Bintime benchmark tests to In order to construct a real-time computer system the what degree the clock granularity is available to a real-time underlining operating system must abide by several application. It records the latency between successive calls requirements[5]. These requirements are outlined below: to a time of day clock function[19]. • Support for multiple preemptable threads - Individual To support deterministic response to external events an threads are typically used to process different hardware OS must process interrupts in a timely fashion. The ISR devices. It is important that the threads are preemptable latency benchmark measures the responsiveness of the OS so that a scheduler can be used to control the allocation to the assertion of the interrupt and the ISR release latency of system resources. benchmark measures the delay seen when transferring con- • Thread priority - A priority scheme is essential to trol from the ISR to the interrupt thread that completes the ensure that time critical processing takes precedence processing of the interrupt. The final type of benchmark over less critical processing. tests inter-thread/process communication by measuring the time it takes one thread to signal another. • Synchronization between threads - Threads that share data require a means of synchronization so that data is TABLE 1. Real-time benchmarks read and written in the proper order. • Deterministic timing of the operating system - This usu- Benchmark Description ally requires that the operating system be preemptable. Jitter Measures the difference between the A non-preemptable operating system could impose observed and desired delay times of vari- unbounded delays. ous OS timer functions • Support to prevent priority inversion - Priority inver- Response Measures the amount of time required to sion occurs when a high priority task is waiting on a perform a fixed amount of processing resource that is held by a lower priority task. The high priority task could be blocked indefinitely if a task with Bintime Tests the responsiveness of an operating intermediate priority preempts the low priority task. system by measuring the time between The typical solution for priority inversion is to increase calls to a time of day clock function the priority of the low priority task until it relinquishes ISR Latency Measures the amount of time from the the resource. assertion of an interrupt to the beginning of its ISR Using these five requirements one can evaluate the abil- ISR Release Measures the time it takes to switch from ity of an operating system to support real-time processing. Latency an ISR to an interrupt thread For example, NT provides multiple preemptable threads but allows only 32 levels of priority. NT also does not pro- Communi- Tests various inter-thread/process com- vide a mechanism to prevent priority inversion for the cation munication mechanisms highest priority threads. The design choices used in NT and how this relates to real-time systems are discussed in more 2.3 Hardware setup detail in Section 3. Table 2 describes the hardware and software configura- 2.2 Testing a real-time operating system tion of the prototype systems used in our evaluation stud- ies. Everything used is commercially available as standard We used the six different types of benchmarks shown in COTS. All timings in our studies were gathered by the Table 1 to evaluate the real-time capabilities of NT and the benchmarks themselves, we did not use any special pur- Dual-OS system. The Jitter benchmark measures the deter- pose hardware to stimulate the system or gather statistics. minism of timers of different duration and resolution. The We did not install INtime when evaluating the NT only sys- benchmark uses a sleep function to sleep for the specified tem because INtime modifies the Hardware Abstraction Layer (HAL) of NT. The HAL is the portion of NT that iso- Table 4 shows the different WinBench98 benchmarks lates the low level hardware details from the kernel and the used in our testing. The CPU test consists of two different device drivers. tests, one targeting the CPU itself and one targeting the FPU. Both the Disk and Graphics benchmarks give results TABLE 2. Prototype hardware and software for a set of Business applications and a set of High-end setup used in benchmark tests applications.
Recommended publications
  • Traceroute Is One of the Key Tools Used for Network Troubleshooting and Scouting
    1 Introduction Traceroute is one of the key tools used for network troubleshooting and scouting. It has been available since networking's early days. Because traceroute is based on TTL header modification, it crafts its own network packets. The goal of this assignment is to re-implement a traceroute with cutting edge techniques designed to improve its scouting capabilities and bypass SPI firewalls. In this assignment you will learn about packet injection and sniffing. The assignment also teaches about more subtle topics such as network latency, packet filtering, and Q.O.S. 1.1 Instructions This project has to be completed sequentially as each part depends on the previous ones. The required coding language is C. You should consider using libnet [1] and libpcap [2], however using raw sockets is permitted as well. Note that the exercises become progressively more difficult, with Exercise 5 likely to consume the greatest amount of effort. 1.2 Submission and Grading To compile your project, the script will use the command make, executed in the project directory. Then it will launch our tests, using an executable name "traceng" you have to make sure your make file results in this executable name, in the same project directory. Make sure that the command line options and the output format are correctly implemented as they will be used by our script during the grading process. Specific examples of how we are going to test your executable are provided later in this document, for each exercise. Your project directory should also contain a file called README which is text file describing the highlights of your solution to each exercise anything special that you did, information required in the specific exercise, what is the most interesting thing you learned in the exercise, and anything else we need to take into account.
    [Show full text]
  • Ongoing Software Development Projects Under Linux/QNX
    Ongoing Software Development Projects under Linux/QNX 1. CCD Image acquistion software under Linux i) Gtk version( 2.0 ) ii) IDL version (6.3) -V.Arumugam, A.V.Ananth 2. Software development under QNX REAL-TIME O.S. Although our efforts are for CONTROL applications specifically for HAGAR, as an initial step we have tried CCD image acquistion software development in QNX to familiarise with various features like Photon Application Builder(PhAB), Resource Manager, Process Manager etc. -V.Arumugam, A.V.Ananth 3. Distributed Telescope control system for 30” telescope at VainuBappu Observatory.The approach we have planned is similar to that of 2 Mtr. Telescope.The advantage of this is scheme is its enoromous flexibility in implementation in the sense ,that different sub-systems could be modified/implemented at different points of time without substantially modify software related to other sub-systems.Also back-ends can also communicate with the telescope and other sub-systems if required to tap information. -V.Arumugam, A.V.Ananth, KavithaPathak, Faseehana, Anbazhagan CCD Image acquisition software under Linux i) Gtk version (2.0) ii) IDL version (6.3) MODEL : It is a Client/Server Design where the Server can be local or at remote site and client accesses the server on LAN/WAN. Applicability : This software intended for 2Kx2K TEK chip and 2Kx4K Marconi chip. Can be used with a little modification for any other sensor in future if appropriate Hardware modifications are made for the existing controller. Drawbacks : As linux and gtk/genome are freely available software and are continuously being modified their version keep changing and hence maintenance of camera software is a hectic task.
    [Show full text]
  • Ipv6 Cheat Sheet
    Internet Protocol Version 6 (IPv6) Basics Cheat Sheet IPv6 Addresses by Jens Roesen /64 – lan segment, 18,446,744,073,709,551,616 v6 IPs IPv6 quick facts /48 – subscriber site, 65536 /64 lan segments successor of IPv4 • 128-bit long addresses • that's 296 times the IPv4 address space • that's 2128 or 3.4x1038 or over 340 /32 – minimum allocation size, 65536 /48 subscriber sites, allocated to ISPs undecillion IPs overall • customer usually gets a /64 subnet, which yields 4 billion times the Ipv4 address space • no need for network address translation (NAT) any more • no broadcasts any more • no ARP • stateless address 2001:0db8:0f61:a1ff:0000:0000:0000:0080 configuration without DHCP • improved multicast • easy IP renumbering • minimum MTU size 1280 • mobile IPv6 • global routing prefix subnet ID interface ID mandatory IPsec support • fixed IPv6 header size of 40 bytes • extension headers • jumbograms up to 4 GiB subnet prefix /64 IPv6 & ICMPv6 Headers IPv6 addresses are written in hexadecimal and divided into eight pairs of two byte blocks, each containing four hex IPv6 header digits. Addresses can be shortened by skipping leading zeros in each block. This would shorten our example address to 0 8 16 24 32 2001:db8:f61:a1ff:0:0:0:80. Additionally, once per IPv6 IP, we can replace consecutive blocks of zeros with a version traffic class flow label double colon: 2001:db8:f61:a1ff::80. The 64-bit interface ID can/should be in modified EUI-64 format. A MAC 00 03 ba 24 a9 6c payload length next header hop limit 48-bit MAC can be transformed to an 64-bit interface ID by inverting the 7th (universal) bit and inserting a ff and fe byte after rd source IPv6 address the 3 byte.
    [Show full text]
  • A Standardized and Flexible Ipv6 Architecture for Field Area Networks
    White Paper A Standardized and Flexible IPv6 Architecture for Field Area Networks: Smart-Grid Last-Mile Infrastructure Last update: January 2014 This paper is intended to provide a synthetic and holistic view of open-standards-based Internet Protocol Version 6 (IPv6) architecture for smart-grid last-mile infrastructures in support of a number of advanced smart-grid applications (meter readout, demand-response, telemetry, and grid monitoring and automation) and its benefit as a true multiservice platform. In this paper, we show how the various building blocks of IPv6 networking infrastructure can provide an efficient, flexible, highly secure, and multiservice network based on open standards. This paper does not address transition paths for electric utilities that deal with such issues as legacy devices, network and application integration, and the operation of hybrid network structures during transitional rollouts. Figure 1. The Telecom Network Architecture Viewed as a Hierarchy of Interrelated Networks Page 1 of 23 1. Introduction Last-mile networks have gained considerable momentum over the past few years because of their prominent role in the smart-grid infrastructure. These networks, referred to as neighborhood-area networks (NANs) in this document, support a variety of applications including not only electricity usage measurement and management, but also advanced applications such as demand/response (DR), which gives users the opportunity to optimize their energy usage based on real-time electricity pricing information; distribution automation (DA), which allows distribution monitoring and control; and automatic fault detection, isolation and management. NANs also serve as a foundation for future virtual power plants, which comprise distributed power generation, residential energy storage (for example, in combination with electric vehicle (EV) charging), and small-scale trading communities.
    [Show full text]
  • Network Troubleshooting Methodology
    NETWORK CONCEPTS 1.8 Implement the following network troubleshooting methodology: Network Troubleshooting Procedure 1. Establish the symptoms. 2. Identify the affected area. 3. Establish what has changed. 4. Select the most probable cause. 5. Implement a solution. 6. Test the result. 7. Recognize the potential effects of the solution. 8. Document the solution. 1 Establish the Symptoms •Determine exactly what is going wrong, and note the effect of the problem on the network. •Assign a priority to the problem. •In a large network environment, it is essential to establish a system of priorities that dictate which calls get addressed first. •Most often, the severity of the problem determines who gets attention first. 2 Rules for Establishing Priorities •Shared resources take precedence over individual resources. •Network-wide problems take precedence over workgroup or departmental problems. •Departmental issues should be rated according to the function of the department. •System-wide problems take precedence over application problems. 3 Identify the Affected Area •See if the problem can be duplicated. •Network problems that you can easily duplicate are far easier to fix, primarily because you can easily test to see if your solution was successful. •Having the user reproduce the problem can sometimes lead to the solution. •If the problem can be duplicated, you can start determining the actual source of the problem. 4 •Eliminate the elements that are not the cause, in a logical and methodical manner. Establish What Has Changed •When a computer or other network component that used to work properly now does not work, some change has probably occurred. •Major changes, such as the installation of new hardware or software, are obvious possible causes of the problem.
    [Show full text]
  • Mpower™ Edge Intelligence MTR Software Guide
    mPowerTM Edge Intelligence MTR Software Guide MPOWER EDGE INTELLIGENCE SOFTWARE GUIDE mPower Edge Intelligence Software Guide Model: MTR-LNA7, MTR-LEU7, MTR-H5, MTR-H6, MTR-MNG2 Part Number: S000720 Version: 5.4 Copyright This publication may not be reproduced, in whole or in part, without the specific and express prior written permission signed by an executive officer of Multi-Tech Systems, Inc. All rights reserved. Copyright © 2021 by Multi-Tech Systems, Inc. Multi-Tech Systems, Inc. makes no representations or warranties, whether express, implied or by estoppels, with respect to the content, information, material and recommendations herein and specifically disclaims any implied warranties of merchantability, fitness for any particular purpose and non- infringement. Multi-Tech Systems, Inc. reserves the right to revise this publication and to make changes from time to time in the content hereof without obligation of Multi-Tech Systems, Inc. to notify any person or organization of such revisions or changes. Legal Notices The MultiTech products are not designed, manufactured or intended for use, and should not be used, or sold or re-sold for use, in connection with applications requiring fail-safe performance or in applications where the failure of the products would reasonably be expected to result in personal injury or death, significant property damage, or serious physical or environmental damage. Examples of such use include life support machines or other life preserving medical devices or systems, air traffic control or aircraft navigation or communications systems, control equipment for nuclear facilities, or missile, nuclear, biological or chemical weapons or other military applications (“Restricted Applications”).
    [Show full text]
  • Novell SUSE Linux Package Description and Support Level Information for SLES 9 S/390X for Contracted Customers and Partners
    Novell SUSE Linux Package Description and Support Level Information for SLES 9 S/390x for Contracted Customers and Partners Definitions and Support Level Descriptions ACC Additional Customer Contract necessary L1: Installation and problem determination, which means technical support designed to Configuration provide compatibility information, installation assistance, usage support, on-going maintenance and basic troubleshooting. Level 1 Support is not intended to correct product defect errors. L2: Reproduction of Potential problem isolation, which means technical support designed to Issues duplicate customer problems, isolate problem area and provide resolution for problems not resolved by Level 1 Support. L3: Code Debugging and problem resolution, which means technical support designed to Patch Provision resolve complex problems by engaging engineering in resolution of product defects which have been identified by Level 2 Support. Package Short Name Package Description SLES 9 S/390x 3ddiag A Tool to Verify the 3D Configuration L3 844-ksc-pcf Korean 8x4x4 johab fonts L2 a2ps Converts ASCII Text into PostScript L3 aaa_base SuSE Linux base package L3 aaa_skel Skeleton for default users L3 aalib An ascii art library L3 aalib-32bit An ascii art library L3 aalib-devel Development package for aalib L3 aalib-devel-32bit Development package for aalib L3 acct User Specific Process Accounting L3 acl Commands for Manipulating POSIX Access Control Lists L3 aide Advanced Intrusion Detection Environment L2 alice-compat Alice compatibility package L3
    [Show full text]
  • Some Ubuntu Practice... SANOG 10 – August 29 New Delhi, India
    Some Ubuntu Practice... SANOG 10 ± August 29 New Delhi, India 1. Get used to using sudo 2. Create an ªinstº account 3. Learn how to install software 4. Install gcc and make 5. Learn how to control services 6. Use the ip tool 7. See the state of your machine 8. Create the locate database 9. So, you wanna be root... 1.) Get used to using sudo Ubuntu and Debian approach system administration a bit differently than other Linux distributions. Instead of logging in as the “root” user to do system tasks, or becoming root by using the su command you are encouraged to do your system administration using sudo. By default your user has privileges to do this. Let's practice this by running some privileged commands from your user account. First, log in if you have not done so. Once you are logged in you'll see something like this: user@pcn:~$ We'll represent this prompt with the abbreviation “$”. Now try to look at the system password file with actual encrypted passwords: $ less /etc/shadow The first time you attempt this it will fail. Instead do the following: $ sudo less /etc/shadow You will be prompted for a password. This is your user's password. Type it in and you should see the contents of the protected file /etc/shadow (press “q” to exit the output on the screen). If you wish to issue a command that requires system privileges, use the sudo command. For instance, if you are interested in seeing what groups your account belongs to you can type: $ sudo vigr You are now in the vi editor (you have a handout to help you with this editor).
    [Show full text]
  • Exercise 3 : Asynchronous I/O and Caching
    Exercise 3 : asynchronous I/O and caching S´ebastienPonce June 6, 2017 1 Goals of the exercise • Do network measurements • Show synchronous I/O (in)efficiency • Play with asynchronous I/O • See client caching benefits 2 Setup 2.1 introduction In this exercise, we will play with client-server interaction over wide area networks. The wide area network will actually be faked : we will connect to ourselves via the loopback device and configure it to have WAN behavior by adding some large delay. Concerning the client-server architecture, we will mainly use 2 kinds : • home cooked scripts as in previous exercises to demonstrate concepts • the xrootd framework to go further. Xrootd is a powerful framework and tool suite based on the xrootd protocol and that can provide efficient and scalable data transfer solutions. Depending on the exercises, we will either use the xrdcp command line tool that is able to read/write files from/to an xrootd server, or we will interact directly with the client API of xrootd, and more specifically with its python binding. 2.2 Basics • open a terminal • if you did not download the exercises yet, refer to exercise1 to do it • go to the exercise3 directory cd /data/exercises/exercise3 • copy the datafile used for exercise1 into the local directory (or recreate it) cp ../exercise1/datafile . 1 3 Setting up Network 3.1 Latency of real WAN • use ping to measure the round trip time to the CERN data center ping -c5 lxplus.cern.ch Ping Time • try to find out what builds up this latency by using mtr mtr lxplus.cern.ch { analyze the physical path of the data { see the number of hops, estimate the time spent in routers/switches { use google maps to have a rough estimate of the cable length (take fastest road length, that is highways, the fibers follow these) { check whether the order of magnitude fits or whether congestions in the network are predominant Main cities on the way Number of hops Estimated cable length Estimated Ping time • you may be surprised that some intermediate routers have longer response time than the final machine.
    [Show full text]
  • Novell SUSE Linux Package Description and Support Level Information for Contracted Customers and Partners
    Novell SUSE Linux Package Description and Support Level Information for Contracted Customers and Partners Definitions and Support Level Descriptions ACC: Additional Customer Contract necessary L1: Installation and problem determination, which means technical support Configuration designed to provide compatibility information, installation assistance, usage support, on-going maintenance and basic troubleshooting. Level 1 Support is not intended to correct product defect errors. L2: Reproduction of problem isolation, which means technical support designed to Potential Issues duplicate customer problems, isolate problem area and provide resolution for problems not resolved by Level 1 Support. L3: Code Debugging and problem resolution, which means technical support designed Patch Provision to resolve complex problems by engaging engineering in resolution of product defects which have been identified by Level 2 Support. Servicelevel Package Short Name Package Description SLES10 SP3 ia64 3ddiag A Tool to Verify the 3D Configuration L3 844-ksc-pcf Korean 8x4x4 Johab Fonts L2 This software changes the resolution of an available vbios 915resolution L2 mode. a2ps Converts ASCII Text into PostScript L2 aaa_base SUSE Linux Base Package L3 aaa_skel Skeleton for Default Users L3 aalib An ASCII Art Library L2 aalib-devel Development Package for AAlib L2 aalib-x86 An ASCII Art Library L2 acct User-Specific Process Accounting L3 acl Commands for Manipulating POSIX Access Control Lists L3 acpid Executes Actions at ACPI Events L3 adaptec-firmware Firmware files for Adaptec SAS Cards (AIC94xx Series) L3 agfa-fonts Professional TrueType Fonts L2 aide Advanced Intrusion Detection Environment L2 alsa Advanced Linux Sound Architecture L3 alsa-devel Include Files and Libraries mandatory for Development.
    [Show full text]
  • Are Echo Requests Only Used for Ping
    Are Echo Requests Only Used For Ping Gail is everyday and satirised tonally while mistaken Milt bootleg and hyperventilates. Interpleural and autolytic Spiro adapts her uranology shinty or pearl imprimis. Flin is unsoiled and foregathers meanderingly while democratic Tobe foreordain and misleads. You are correct number within standard ping used for echo only the fields Onboarding and Upgrading options. No results can ping reply messages be able to ping for contributing to otherwise ping that is a routing tables, you encounter issues. Those are ICMP message types to test the hosts availability. Each time data goes between routers, ICMP is used to send messages that are used by ping and traceroute to provide information regarding how data is transmitted. TTL value as the packet passes through the router. The next page allows you some control over when the rule is active. There are two versions of the Internet Protocol currently active; the main difference between them is the format of IP address that they specify. As you thoughts with requests are only used for echo requests and purposes, an snmp ping time values given. Search in all products. No packet are used for the program output corresponds to the volume of various reasons. The structure overview of weak points with an arp request is produced using dns hostname, see below for echo requests are only used to physical representation of tcpdump output lists the host. Cisco labs for free. An ICMP redirect is sent by a router to a host to give information that an alternative router will provide a better path to the desired destination.
    [Show full text]
  • Ipv6 Cheat Sheet, 09/2011
    Internet Protocol Version 6 (IPv6) Basics cheat sheet – v 1.6 IPv6 Addresses by Jens Roesen – email – www - twitter /64 – lan segment, 18,446,744,073,709,551,616 v6 IPs IPv6 quick facts /48 – subscriber site, 65536 /64 lan segments /32 – minimum allocation size, 65536 /48 subscriber sites, allocated to ISPs successor of IPv4 • 128-bit long addresses • that's 296 times the IPv4 address space • that's 2128 or 3.4x1038 or over 340 undecillion IPs overall • a customer usually gets a /64 subnet, which yields 4 billion times the IPs 2001:0db8:0f61:a1ff:0000:0000:0000:0080 available by IPv4 • no need for network address translation (NAT) any more • no broadcasts any more • no global routing prefix subnet ID ARP • stateless address configuration without DHCP • improved multicast • easy IP renumbering • minimum interface ID MTU size 1280 • mobile IPv6 • mandatory IPsec support • extension headers • jumbograms up to 4 GiB subnet prefix /64 IPv6 & ICMPv6 Headers IPv6 addresses are written in hexadecimal and divided into eight pairs of two byte blocks, each containing IPv6 header four hex digits. Addresses can be shortened by skipping leading zeros in each block. This would shorten our 0 8 16 24 32 example address to 2001:db8:f61:a1ff:0:0:0:80. Additionally, once per IPv6 IP, we can replace MAC 00 03 ba 24 a9 6c version traffic class flow label consecutive blocks of zeros with a double colon: payload length next header hop limit 2001:db8:f61:a1ff::80. The 64-bit interface ID can/should be in modified EUI-64 EUI-64 02 03 ba ff fe 24 a9 6c source IPv6 address format.
    [Show full text]