57
1. Network Topologies 1.1 LAN 1.2 WAN 1.3 MAN 1

Saiku Viva Documentation

Embed Size (px)

Citation preview

Page 1: Saiku Viva Documentation

1. Network Topologies

1.1 LAN

1.2 WAN

1.3 MAN

1

Page 2: Saiku Viva Documentation

1.1 Local Area Network (LAN)

A local area network (LAN) is a computer network that interconnects computers in a limited area such as a home, school, computer laboratory, or office building. The defining characteristics of LANs, in contrast to wide area networks (WANs), include their usually higher data-transfer rates, smaller geographic area, and lack of a need for leased telecommunication lines.

ARCNET, Token Ring and other technology standards have been used in the past, but Ethernet over twisted pair cabling, and Wi-Fi are the two most common technologies currently used to build LANs.

Ethernet is by far the most commonly used LAN technology. A number of corporations use the Token Ring technology. Another LAN technology, ARCNET, once the most commonly installed LAN technology, is still used in the industrial automation industry.

Typically, a suite of application programs can be kept on the LAN server. Users who need an application frequently can download it once and then run it from their local hard disk. Users can order printing and other services as needed through applications run on the LAN server. A user can share files with others at the LAN server; read and write access is maintained by a LAN administrator. A LAN server may also be used as a Web server if safeguards are taken to secure internal applications and data from outside access.

Wi-Fi is a popular technology that allows an electronic device to exchange data wirelessly (using radio waves) over a computer network, including high-speed Internet connections. The Wi-Fi Alliance defines Wi-Fi as any "wireless local area network (WLAN) products that are based on the Institute of Electrical and Electronics Engineers' (IEEE) 802.11 standards". However, since most modern WLANs are based on these standards, the term "Wi-Fi" is used in general English as a synonym for "WLAN".

A device that can use Wi-Fi (such as a personal computer, video game console, smartphone, tablet, or digital audio player) can connect to a network resource such as the Internet via a wireless network access point. Such an access point (or hotspot) has a range of about 20 meters (65 feet) indoors and a greater range outdoors. Hotspot coverage can comprise an area as small as a single room with walls that block radio waves or as large as many square miles — this is achieved by using multiple overlapping access points.

In some situations, a wireless LAN may be preferable to a wired LAN because it is cheaper to install and maintain.

2

Page 3: Saiku Viva Documentation

1.1.1 History

The increasing demand and use of computers in universities and research labs in the late 1960s generated the need to provide high-speed interconnections between computer systems. A 1970 report from the Lawrence Radiation Laboratory detailing the growth of their "Octopus" network gave a good indication of the situation.

Cambridge Ring was developed at Cambridge University in 1974 but was never developed into a successful commercial product.

Ethernet was developed at Xerox PARC in 1973–1975, and filed as U.S. Patent 4,063,220. In 1976, after the system was deployed at PARC, Metcalfe and Boggs published a seminal paper, "Ethernet: Distributed Packet-Switching For Local Computer Networks."

ARCNET was developed by Datapoint Corporation in 1976 and announced in 1977. It had the first commercial installation in December 1977 at Chase Manhattan Bank in New York.

3

Page 4: Saiku Viva Documentation

1.1.2 Standards Evolution

The development and proliferation of personal computers using the CP/M operating system in the late 1970s, and later DOS-based systems starting in 1981, meant that many sites grew to dozens or even hundreds of computers. The initial driving force for networking was generally to share storage and printers, which were both expensive at the time. There was much enthusiasm for the concept and for several years, from about 1983 onward, computer industry pundits would regularly declare the coming year to be “the year of the LAN”.[9][10][11]

In practice, the concept was marred by proliferation of incompatible physical layer and network protocol implementations, and a plethora of methods of sharing resources. Typically, each vendor would have its own type of network card, cabling, protocol, and network operating system. A solution appeared with the advent of Novell NetWare which provided even-handed support for dozens of competing card/cable types, and a much more sophisticated operating system than most of its competitors. Netware dominated[12] the personal computer LAN business from early after its introduction in 1983 until the mid 1990s when Microsoft introduced Windows NT Advanced Server and Windows for Workgroups.

Of the competitors to NetWare, only Banyan Vines had comparable technical strengths, but Banyan never gained a secure base. Microsoft and 3Com worked together to create a simple network operating system which formed the base of 3Com's 3+Share, Microsoft's LAN Manager and IBM's LAN Server - but none of these were particularly successful.

During the same period, Unix computer workstations from vendors such as Sun Microsystems, Hewlett-Packard, Silicon Graphics, Intergraph, NeXT and Apollo were using TCP/IP based networking. Although this market segment is now much reduced, the technologies developed in this area continue to be influential on the Internet and in both Linux and Apple Mac OS X networking—and the TCP/IP protocol has now almost completely replaced IPX, AppleTalk, NBF, and other protocols used by the early PC LANs.

4

Page 5: Saiku Viva Documentation

1.1.3 Cabling

Early LAN cabling had always been based on various grades of coaxial cable. However shielded twisted pair was used in IBM's Token Ring implementation, and in 1984 StarLAN showed the potential of simple unshielded twisted pair by using Cat3—the same simple cable used for telephone systems. This led to the development of 10Base-T (and its successors) and structured cabling which is still the basis of most commercial LANs today. In addition, fiber-optic cabling is increasingly used in commercial applications.

As cabling is not always possible, wireless Wi-Fi is now the most common technology in residential premises, as the cabling required is minimal and it is well suited to mobile laptops and smartphones.

5

Page 6: Saiku Viva Documentation

1.1.4 Technical Aspects

Network topology describes the layout pattern of interconnections between devices and network segments. Switched Ethernet has been for some time the most common Data Link Layer and Physical Layer implementation for local area networks. At the higher layers, the Internet Protocol (TCP/IP) has become the standard. Smaller LANs generally consist of one or more switches linked to each other, often at least one is connected to a router, cable modem, or ADSL modem for Internet access.

Larger LANs are characterized by their use of redundant links with switches using the spanning tree protocol to prevent loops, their ability to manage differing traffic types via quality of service (QoS), and to segregate traffic with VLANs. Larger LANs also contain a wide variety of network devices such as switches, firewalls, routers, load balancers, and sensors.

LANs may have connections with other LANs via leased lines, leased services, or by tunneling across the Internet using virtual private network technologies. Depending on how the connections are established and secured in a LAN, and the distance involved, a LAN may also be classified as a metropolitan area network (MAN) or a wide area network (WAN).

6

Page 7: Saiku Viva Documentation

7

Page 8: Saiku Viva Documentation

1.2 Wide Area Network (WAN)

A Wide Area Network (WAN) is a telecommunication network that covers a broad area (i.e., any network that links across metropolitan, regional, or national boundaries). Business and government entities utilize WANs to relay data among employees, clients, buyers, and suppliers from various geographical locations. In essence this mode of telecommunication allows a business to effectively carry out its daily function regardless of location.

This is in contrast with personal area networks (PANs), local area networks (LANs), campus area networks (CANs), or metropolitan area networks (MANs) which are usually limited to a room, building, campus or specific metropolitan area (e.g., a city) respectively.

The world's most popular WAN is the Internet. Some segments of the Internet, like VPN-based extranets, are also WANs in themselves. Finally, many WANs are corporate or research networks that utilize leased lines.

WANs generally utilize different and much more expensive networking equipment than do LANs. Key technologies often found in WANs include SONET, Frame Relay, and ATM.

8

Page 9: Saiku Viva Documentation

1.2.1 Design Options

The textbook definition of a WAN is a computer network spanning regions, countries, or even the world. However, in terms of the application of computer networking protocols and concepts, it may be best to view WANs as computer networking technologies used to transmit data over long distances, and between different LANs, MANs and other localised computer networking architectures. This distinction stems from the fact that common LAN technologies operating at Layer 1/2 (such as the forms of Ethernet or Wifi) are often geared towards physically localised networks, and thus cannot transmit data over tens, hundreds or even thousands of miles or kilometres.

WANs necessarily do not just connect physically disparate LANs. A CAN, for example, may have a localised backbone of a WAN technology, which connects different LANs within a campus. This could be to facilitate higher bandwidth applications, or provide better functionality for users in the CAN.

WANs are used to connect LANs and other types of networks together, so that users and computers in one location can communicate with users and computers in other locations. Many WANs are built for one particular organization and are private. Others, built by Internet service providers, provide connections from an organization's LAN to the Internet. WANs are often built using leased lines. At each end of the leased line, a router connects the LAN on one side with a second router within the LAN on the other. Leased lines can be very expensive. Instead of using leased lines, WANs can also be built using less costly circuit switching or packet switching methods. Network protocols including TCP/IP deliver transport and addressing functions. Protocols including Packet over SONET/SDH, MPLS, ATM and Frame relay are often used by service providers to deliver the links that are used in WANs. X.25 was an important early WAN protocol, and is often considered to be the "grandfather" of Frame Relay as many of the underlying protocols and functions of X.25 are still in use today (with upgrades) by Frame Relay.

Academic research into wide area networks can be broken down into three areas: mathematical models, network emulation and network simulation.

Performance improvements are sometimes delivered via wide area file services or WAN optimization.

9

Page 10: Saiku Viva Documentation

1.2.2 Connection Technology Options

Several options are available for WAN connectivity

Option: Description Advantages DisadvantagesBandwidth

range

Sample protocols

usedLeased

linePoint-to-Point connection between two computers or Local Area Networks (LANs)

Most secure Expensive PPP, HDLC, SDLC, HNAS

Circuit switching

A dedicated circuit path is created between end points. Best example is dialup connections

Less Expensive

Call Setup 28 - 144 kbit/s

PPP, ISDN

Packet switching

Devices transport packets via a shared single point-to-point or point-to-multipoint link across a carrier internetwork. Variable length packets are transmitted over Permanent Virtual Circuits (PVC) or Switched Virtual Circuits (SVC)

Shared media across link

X.25 Frame-Relay

Cell relay

Similar to packet switching, but uses fixed length cells instead of variable length packets. Data is divided into fixed-length cells and then transported across virtual circuits

Best for simultaneous use of voice and data

Overhead can be considerable

ATM

10

Page 11: Saiku Viva Documentation

Transmission rates usually range from 1200 bit/s to 24 Mbit/s, although some connections such as ATM and Leased lines can reach speeds greater than 156 Mbit/s. Typical communication links used in WANs are telephone lines, microwave links & satellite channels.

Recently with the proliferation of low cost of Internet connectivity many companies and organizations have turned to VPN to interconnect their networks, creating a WAN in that way. Companies such as Cisco, New Edge Networks and Check Point offer solutions to create VPN networks.

11

Page 12: Saiku Viva Documentation

Local Area Network (L AN)

12

Page 13: Saiku Viva Documentation

1.3 Metropolitan Area Network (MAN)

A Metropolitan Area Network (MAN) is a computer network that usually spans a city or a large campus. A MAN usually interconnects a number of local area networks (LANs) using a high-capacity backbone technology, such as fiber-optical links, and provides up-link services to wide area networks (or WAN) and the Internet.

The IEEE 802-2002 standard describes a MAN as being:

“ A MAN is optimized for a larger geographical area than a LAN, ranging from several blocks of buildings to entire cities. MANs can also depend on communications channels of moderate-to-high data rates. A MAN might be owned and operated by a single organization, but it usually will be used by many individuals and organizations. MANs might also be owned and operated as public utilities. They will often provide means for internetworking of local networks. ”

Authors Kenneth C. Laudon and Jane P. Laudon (2001) of Management Information Systems: Managing the Digital Firm 10th ed. define a metropolitan area network as:

“ A Metropolitan Area Network (MAN) is a large computer network that spans a metropolitan area or campus. Its geographic scope falls between a WAN and LAN. MANs provide Internet connectivity for LANs in a metropolitan region, and connect them to wider area networks like the Internet. ”

It can also be used in cable television.

13

Page 14: Saiku Viva Documentation

1.3.1 Implementation

Some technologies used for this purpose are Asynchronous Transfer Mode (ATM), FDDI, and SMDS. These technologies are in the process of being displaced by Ethernet-based connections (e.g., Metro Ethernet) in most areas. MAN links between local area networks have been built without cables using either microwave, radio, or infra-red laser links. Most companies rent or lease circuits from common carriers because laying long stretches of cable can be expensive.

DQDB, Distributed-queue dual-bus, is the metropolitan area network standard for data communication. It is specified in the IEEE 802.6 standard. Using DQDB, networks can be up to 20 miles (30 km) long and operate at speeds of 34 to 155 Mbit/s.

Several notable networks started as MANs, such as the Internet peering points MAE-West, MAE-East, and the Sohonet media network.

14

Page 15: Saiku Viva Documentation

Metropolitan Area Network (MAN)

15

Page 16: Saiku Viva Documentation

References

"A Review of the Basic Components of a Local Area Network (LAN)". NetworkBits.net. "Ethernet Prototype Circuit Board". Smithsonian National Museum of American History. Gary A. Donahue (2007-06). Network Warrior. O'Reilly. Groth, David and Skandler, Toby (2009). Network+ Study Guide, Fourth Edition. Sybex,

Inc. IEEE Std 802-2002, IEEE Standard for Local and Metropolitan Area Networks:

Overview and Architecture, page 1, section 1.2: "Key Concepts", "basic technologies". Lamont Wood (2008-01-31). "The LAN turns 30, but will it reach 40?".

Computerworld.com. McQuerry, Steve (November 19, 2003). 'CCNA Self-Study: Interconnecting Cisco

Network Devices (ICND), Second Edition'. Cisco Press. Samuel F. Mendicino (1970-12-01). "Octopus: The Lawrence Radiation Laboratory

Network". Rogerdmoore.ca. "THE LAWRENCE RADIATION LABORATORY OCTOPUS". Courant symposium

series on networks. Wayne Spivak (2001-07-13). "Has Microsoft Ever Read the History Books?"

16

Page 17: Saiku Viva Documentation

2. Time Division Multiplexing (TDM)

17

Page 18: Saiku Viva Documentation

2.0 Time Division Multiplexing (TDM)

Time-division multiplexing (TDM) is a type of digital (or rarely analog) multiplexing in which two or more bit streams or signals are transferred apparently simultaneously as sub-channels in one communication channel, but are physically taking turns on the channel. The time domain is divided into several recurrent time slots of fixed length, one for each sub-channel. A sample byte or data block of sub-channel 1 is transmitted during time slot 1, sub-channel 2 during time slot 2, etc. One TDM frame consists of one time slot per sub-channel plus a synchronization channel and sometimes error correction channel before the synchronization. After the last sub-channel, error correction, and synchronization, the cycle starts all over again with a new frame, starting with the second sample, byte or data block from sub-channel 1, etc.

18

Page 19: Saiku Viva Documentation

2.1 Application Examples

The plesiochronous digital hierarchy (PDH) system, also known as the PCM system, for digital transmission of several telephone calls over the same four-wire copper cable

(T-carrier or E-carrier) or fiber cable in the circuit switched digital telephone network The synchronous digital hierarchy (SDH)/synchronous optical networking (SONET)

network transmission standards that have replaced PDH. The RIFF (WAV) audio standard interleaves left and right stereo signals on a per-sample

basis The left-right channel splitting in use for stereoscopic liquid crystal shutter glasses

TDM can be further extended into the time division multiple access (TDMA) scheme, where several stations connected to the same physical medium, for example sharing the same frequency channel, can communicate. Application examples include:

The GSM telephone system The Tactical Data Links Link 16 and Link 22

19

Page 20: Saiku Viva Documentation

2.2 TDM Versus Packet Mode Communication

In its primary form, TDM is used for circuit mode communication with a fixed number of channels and constant bandwidth per channel.

Bandwidth Reservation distinguishes time-division multiplexing from statistical multiplexing such as packet mode communication (also known as statistical time-domain multiplexing, see below) i.e. the time slots are recurrent in a fixed order and pre-allocated to the channels, rather than scheduled on a packet-by-packet basis. Statistical time-domain multiplexing resembles, but should not be considered the same as time-division multiplexing.

In dynamic TDMA, a scheduling algorithm dynamically reserves a variable number of time slots in each frame to variable bit-rate data streams, based on the traffic demand of each data stream. Dynamic TDMA is used in

HIPERLAN/2; Dynamic synchronous Transfer Mode; IEEE 802.16a.

20

Page 21: Saiku Viva Documentation

2.3 History

Time-division multiplexing was first developed in telegraphy; see multiplexing in telegraphy: Émile Baudot developed a time-multiplexing system of multiple Hughes machines in the 1870s.

For the SIGSALY encryptor of 1943, see PCM.

In 1953 a 24 channel TDM was placed in commercial operation by RCA Communications to send audio information between RCA's facility at Broad Street, New York and their transmitting station at Rocky Point and the receiving station at Riverhead, Long Island, New York. The communication was by a microwave system throughout Long Island. The experimental TDM system was developed by RCA Laboratories between 1950 and 1953.

In 1962, engineers from Bell Labs developed the first D1 Channel Banks, which combined 24 digitised voice calls over a 4-wire copper trunk between Bell central office analogue switches. A channel bank sliced a 1.544 Mbit/s digital signal into 8,000 separate frames, each composed of 24 contiguous bytes. Each byte represented a single telephone call encoded into a constant bit rate signal of 64 Kbit/s. Channel banks used a byte's fixed position (temporal alignment) in the frame to determine which call it belonged to.

21

Page 22: Saiku Viva Documentation

2.4 Transmission Using Time Division Multiplexing (TDM)

In circuit switched networks such as the public switched telephone network (PSTN) there exists the need to transmit multiple subscribers’ calls along the same transmission medium. To accomplish this, network designers make use of TDM. TDM allows switches to create channels, also known as tributaries, within a transmission stream. A standard DS0 voice signal has a data bit rate of 64 kbit/s, determined using Nyquist’s sampling criterion. TDM takes frames of the voice signals and multiplexes them into a TDM frame which runs at a higher bandwidth. So if the TDM frame consists of n voice frames, the bandwidth will be n*64 kbit/s.

Each voice sample time slot in the TDM frame is called a channel . In European systems, TDM frames contain 30 digital voice channels, and in American systems, they contain 24 channels. Both standards also contain extra bits (or bit time slots) for signalling and synchronisation bits.

Multiplexing more than 24 or 30 digital voice channels is called higher order multiplexing. Higher order multiplexing is accomplished by multiplexing the standard TDM frames. For example, a European 120 channel TDM frame is formed by multiplexing four standard 30 channel TDM frames. At each higher order multiplex, four TDM frames from the immediate lower order are combined, creating multiplexes with a bandwidth of n x 64 kbit/s, where n = 120, 480, 1920, etc.

22

Page 23: Saiku Viva Documentation

2.5 Synchronous Digital Hierarchy (SDH)

Plesiochronous digital hierarchy (PDH) was developed as a standard for multiplexing higher order frames. PDH created larger numbers of channels by multiplexing the standard Europeans 30 channel TDM frames. This solution worked for a while; however PDH suffered from several inherent drawbacks which ultimately resulted in the development of the Synchronous Digital Hierarchy (SDH). The requirements which drove the development of SDH were these:

Be synchronous – All clocks in the system must align with a reference clock. Be service-oriented – SDH must route traffic from End Exchange to End Exchange

without worrying about exchanges in between, where the bandwidth can be reserved at a fixed level for a fixed period of time.

Allow frames of any size to be removed or inserted into an SDH frame of any size. Easily manageable with the capability of transferring management data across links. Provide high levels of recovery from faults. Provide high data rates by multiplexing any size frame, limited only by technology. Give reduced bit rate errors.

SDH has become the primary transmission protocol in most PSTN networks. It was developed to allow streams 1.544 Mbit/s and above to be multiplexed, in order to create larger SDH frames known as Synchronous Transport Modules (STM). The STM-1 frame consists of smaller streams that are multiplexed to create a 155.52 Mbit/s frame. SDH can also multiplex packet based frames e.g. Ethernet, PPP and ATM.

While SDH is considered to be a transmission protocol (Layer 1 in the OSI Reference Model), it also performs some switching functions, as stated in the third bullet point requirement listed above. The most common SDH Networking functions are these:

SDH Crossconnect – The SDH Crossconnect is the SDH version of a Time-Space-Time crosspoint switch. It connects any channel on any of its inputs to any channel on any of its outputs. The SDH Crossconnect is used in Transit Exchanges, where all inputs and outputs are connected to other exchanges.

SDH Add-Drop Multiplexer – The SDH Add-Drop Multiplexer (ADM) can add or remove any multiplexed frame down to 1.544Mb. Below this level, standard TDM can be performed. SDH ADMs can also perform the task of an SDH Crossconnect and are used in End Exchanges where the channels from subscribers are connected to the core PSTN network.

SDH network functions are connected using high-speed optic fibre. Optic fibre uses light pulses to transmit data and is therefore extremely fast. Modern optic fibre transmission makes use of Wavelength Division Multiplexing (WDM) where signals transmitted across the fibre are transmitted at different wavelengths, creating additional channels for transmission. This increases the speed and capacity of the link, which in turn reduces both unit and total costs.

23

Page 24: Saiku Viva Documentation

2.6 Statistical Time-Division Multiplexing (Stat TDM)

STDM is an advanced version of TDM in which both the address of the terminal and the data itself are transmitted together for better routing. Using STDM allows bandwidth to be split over 1 line. Many college and corporate campuses use this type of TDM to logically distribute bandwidth.

If there is one 10MBit line coming into the building, STDM can be used to provide 178 terminals with a dedicated 56k connection (178 * 56k = 9.96Mb). A more common use however is to only grant the bandwidth when that much is needed. STDM does not reserve a time slot for each terminal, rather it assigns a slot when the terminal is requiring data to be sent or received.

This is also called asynchronous time-division multiplexing[5](ATDM), in an alternative nomenclature in which "STDM" or "synchronous time division multiplexing" designates the older method that uses fixed time slots.

24

Page 25: Saiku Viva Documentation

Time Division Multiplexing (TDM)

25

Page 26: Saiku Viva Documentation

References

General Services Administration document "Federal Standard 1037C"

Nadeau, T., Ed., and D. Zelig, Ed., "Pseudowire (PW) Management Information Base", RFC 5601, July 2009.

Nadeau, T., Ed., Zelig, D., Ed., and O. Nicklass, Ed. "Definitions for Textual Conventions for Pseudowire (PW) Management", RFC 5542, May 2009.

Nicklass, O., Ed., "Definitions of Managed Objects for the DS1, J1, E1, DS2, and E2 Interface Types", RFC 4805,March 2007.

Nicklass, O., Ed., "Definitions of Managed Objects for the DS3/E3 Interface Type", RFC 3896, September 2004.

Vainshtein, A., Ed., and YJ. Stein, Ed., "Structure-Agnostic Time Division Multiplexing (TDM) over Packet (SAToP)", RFC 4553, June 2006.

Vainshtein, A. and Y(J). Stein, "Control Protocol Extensions for the Setup of Time-Division Multiplexing (TDM) Pseudowires in MPLS Networks", RFC 5287, August 2008

26

Page 27: Saiku Viva Documentation

3. HTML Common Tags

27

Page 28: Saiku Viva Documentation

3.0 HTML Common Tags

HTML tags (otherwise known as "HTML elements"), and their respective attributes are used to create HTML documents so that you can view them in browsers and other user agents. Note that not all browsers/user agents support all HTML tags and their attributes, so you should try to test your pages in as many browsers as you can.

HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets (like <html>), within the web page content. HTML tags most commonly come in pairs like <h1> and </h1>, although some tags, known as empty elements, are unpaired, for example <img>. The first tag in a pair is the start tag, the second tag is the end tag (they are also called opening tags and closing tags). In between these tags web designers can add text, tags, comments and other types of text-based content.

The purpose of a web browser is to read HTML documents and compose them into visible or audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the content of the page.

HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded and can be used to create interactive forms. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts in languages such as JavaScript which affect the behavior of HTML webpages.

28

Page 29: Saiku Viva Documentation

3.1 First Specifications

The first publicly available description of HTML was a document called "HTML Tags", first mentioned on the Internet by Berners-Lee in late 1991. It describes 18 elements comprising the initial, relatively simple design of HTML. Except for the hyperlink tag, these were strongly influenced by SGML guid, an in-house SGML based documentation format at CERN. Eleven of these elements still exist in HTML 4.

Hypertext markup language is a markup language that web browsers use to interpret and compose text, images and other material into visual or audible web pages. Default characteristics for every item of HTML markup are defined in the browser, and these characteristics can be altered or enhanced by the web page designer's additional use of CSS. Many of the text elements are found in the 1988 ISO technical report TR 9537 Techniques for using SGML, which in turn covers the features of early text formatting languages such as that used by the RUNOFF command developed in the early 1960s for the CTSS (Compatible Time-Sharing System) operating system: these formatting commands were derived from the commands used by typesetters to manually format documents. However, the SGML concept of generalized markup is based on elements (nested annotated ranges with attributes) rather than merely print effects, with also the separation of structure and processing; HTML has been progressively moved in this direction with CSS.

Berners-Lee considered HTML to be an application of SGML. It was formally defined as such by the Internet Engineering Task Force (IETF) with the mid-1993 publication of the first proposal for an HTML specification: "Hypertext Markup Language (HTML)" Internet-Draft by Berners-Lee and Dan Connolly, which included an SGML Document Type Definition to define the grammar. The draft expired after six months, but was notable for its acknowledgement of the NCSA Mosaic browser's custom tag for embedding in-line images, reflecting the IETF's philosophy of basing standards on successful prototypes. Similarly, Dave Raggett's competing Internet-Draft, "HTML+ (Hypertext Markup Format)", from late 1993, suggested standardizing already-implemented features like tables and fill-out forms.

After the HTML and HTML+ drafts expired in early 1994, the IETF created an HTML Working Group, which in 1995 completed "HTML 2.0", the first HTML specification intended to be treated as a standard against which future implementations should be based. Published as Request for Comments 1866, HTML 2.0 included ideas from the HTML and HTML+ drafts. The 2.0 designation was intended to distinguish the new edition from previous drafts.

Further development under the auspices of the IETF was stalled by competing interests. Since 1996, the HTML specifications have been maintained, with input from commercial software vendors, by the World Wide Web Consortium (W3C). However, in 2000, HTML also became an international standard (ISO/IEC 15445:2000). HTML 4.01 was published in late 1999, with further errata published through 2001. In 2004 development began on HTML5 in the Web Hypertext Application Technology Working Group (WHATWG), which became a joint deliverable with the W3C in 2008.

29

Page 30: Saiku Viva Documentation

3.2 Elements

HTML documents are composed entirely of HTML elements that, in their most general form have three components: a pair of tags, a "start tag" and "end tag"; some attributes within the start tag; and finally, any textual and graphical content between the start and end tags, perhaps including other nested elements. The HTML element is everything between and including the start and end tags. Each tag is enclosed in angle brackets.

The general form of an HTML element is therefore: <tag attribute1="value1" attribute2="value2">content</tag>. Some HTML elements are defined as empty elements and take the form <tag attribute1="value1" attribute2="value2" >. Empty elements may enclose no content, for instance, the BR tag or the inline IMG tag. The name of an HTML element is the name used in the tags. Note that the end tag's name is preceded by a slash character, "/", and that in empty elements the end tag is neither required nor allowed. If attributes are not mentioned, default values are used in each case.

3.3 Element Examples

Header of the HTML document:<head>…</head>. Usually the title should be included in the head, for example:

<head> <title>The Title</title></head>

Headings: HTML headings are defined with the <h1> to <h6> tags:

<h1>Heading1</h1><h2>Heading2</h2><h3>Heading3</h3><h4>Heading4</h4><h5>Heading5</h5><h6>Heading6</h6>

Paragraphs:

<p>Paragraph 1</p> <p>Paragraph 2</p>

30

Page 31: Saiku Viva Documentation

Line breaks:<br>. The difference between <br> and <p> is that ‘br’ breaks a line without altering the semantic structure of the page, whereas ‘p’ sections the page into paragraphs. Note also that ‘br’ is an empty element in that, while it may have attributes, it can take no content and it may not have an end tag.

<p>This <br> is a paragraph <br> with <br> line breaks</p>

Comments:

<!—This is a comment

Comments can help understanding of the markup and do not display in the webpage.

Anchor Tag:

<a href=”http://www.w3schools.com”>Visit W3Schools.com!</a>

Marks an area of the page that a link jumps to.

Frame Tag:

<frame></frame>

Assigns a name to a frame. This is useful for loading contents into one frame from another.

Heading Tags:

<h1>Level 1 heading using the HTML h1 tag</h1>

The <h1> to <h6> tags are used to define HTML headings. <h1> defines the most important heading. <h6> defines the least important heading.

31

Page 32: Saiku Viva Documentation

HTML Tags:

<html></html>

States the browser that it is a html program

<tt> <i> <b> <big> <small> Tags:

<tt>Teletypetext</tt><i>Italictext</i><b>Boldtext</b><big>Bigtext</big><small>Smal text</small>

The <tt>, <i>, <b>, <big>, and <small> tags are all font-style tags. Font-style tags are defined in HTML4, but it is strongly recommended to use CSS styling instead.

Tag Description<i> Renders as italic text<b> Renders as bold text<big> Renders as bigger text<tt> Renders as teletype text<small>

Renders as smaller text

Font Tag:

<font size=”3” color=”red”>This is some text!</font><font size=”2” color=”blue”>This is some text!</font><font face=”verdana” color=”green”>This is some text!</font>

The <font> tag specifies the font face, font size, and font color of text.

32

Page 33: Saiku Viva Documentation

Fieldset Tag:

<form>  <fieldset>    <legend>Personalia:</legend>    Name: <input type=”text” /><br />    Email: <input type=”text” /><br />    Date of birth: <input type=”text” />  </fieldset></form>

The <fieldset> tag is used to group related elements in a form and also can be used to draw a box around the related elements.

Form Tag:

<form action=”form_action.asp” method=”get”>  First name: <input type=”text” name=”fname” /><br />  Last name: <input type=”text” name=”lname” /><br />  <input type=”submit” value=”Submit” /></form>

The <form> tag is used to create an HTML form for user input.

The <form> element can contain one or more of the following form elements:

<input> <textarea> <button> <select> <option> <optgroup> <fieldset> <label>

An HTML form is used to pass data to a server.

33

Page 34: Saiku Viva Documentation

Frameset Tag:<frameset cols=”25%,*,25%”>  <frame src=”frame_a.htm” />  <frame src=”frame_b.htm” />  <frame src=”frame_c.htm” /></frameset>

The <frameset> tag defines a frameset.

The <frameset> element holds one or more <frame> elements. Each <frame> element can hold a separate document.

The <frameset> element specifies HOW MANY columns or rows there will be in the frameset, and HOW MUCH percentage/pixels of space will occupy each of them.

Image Tag:<img src=”smiley.gif” alt=”Smiley face” height=”42” width=”42”/>

The <img> tag defines an image in an HTML page. The <img> tag has two required attributes: src and alt.

Note: Images are not technically inserted into an HTML page, images are linked to HTML pages. The <img> tag creates a holding space for the referenced image.

List Tag:

<li>Coffee</li>

The <li> tag defines a list item. The <li> tag is used in both ordered (<ol>) and unordered (<ul>) lists.

Meta Tag:

<meta name=”description” content=”Free Web tutorials” />

34

Page 35: Saiku Viva Documentation

Metadata is data (information) about data. The <meta> tag provides metadata about the HTML document. Metadata will not be displayed on the page, but will be machine parsable. Meta elements are typically used to specify page description, keywords, author of the document, last modified, and other metadata.

Object Tag:<object width=”400” height=”400” data=”helloworld.swf”></object>

The <object> tag defines an embedded object within an HTML document. Use this element to embed multimedia (like audio, video, Java applets, ActiveX, PDF, and Flash) in your web pages.You can also use the <object> tag to embed another webpage into your HTML document.

Ordered List Tag:

<ol>  <li>Coffee</li>  <li>Tea</li>  <li>Milk</li></ol>

The <ol> tag defines an ordered list. An ordered list can be numerical or alphabetical.

<s> and <strike> Tags:

<p>Version 2.0 is <s>not yet available!</s> now available!</p>

<p>Version 2.0 is <strike>not yet available!</strike> now available!</p>

The <s> and <strike> tags define strikethrough text.

Script Tag:<script type=”text/javascript”>document.write(“Hello World!”)</script>

The <script> tag is used to define a client-side script, such as a JavaScript. The <script> element either contains scripting statements, or it points to an external script file through the src attribute.

35

Page 36: Saiku Viva Documentation

The required type attribute specifies the MIME type of the script. Common uses for JavaScript are image manipulation, form validation, and dynamic changes of content.

<table border=”1”>  <thead>    <tr>      <th>Month</th>      <th>Savings</th>    </tr>  </thead>  <tfoot>    <tr>      <td>Sum</td>      <td>$180</td>    </tr>  </tfoot>  <tbody>    <tr>      <td>January</td>      <td>$100</td>    </tr>    <tr>      <td>February</td>      <td>$80</td>    </tr>  </tbody></table>

An HTML table consists of the <table> element and one or more <tr>, <th>, and <td> elements.

The <table> tag defines an HTML table. The <tr> tag defines a row in an HTML table. A <tr> element contains one or more <th>

or <td> elements. The <th> tag defines a header cell in an HTML table. The <td> tag defines a standard cell in an HTML table. The <tbody> tag is used to group the body content in an HTML table. It is used in

conjunction with the <thead> and <tfoot> elements to specify each part of a table (body, header, footer).

36

Page 37: Saiku Viva Documentation

Title Tag:

<html> <head> <title>HTML 4.01 Tag Reference</title> </head> <body> The content of the document…... </body></html>

The <title> tag defines the title of the document. It is required in all HTML/XHTML documents. The <title> element:

defines a title in the browser toolbar provides a title for the page when it is added to favorites displays a title for the page in search-engine results

Underline Tag:

<p>Do not <u>underline</u> text if it is not a hyperlink!</p>

The <u> tag defines underlined text.

Unordered List Tag:

<ul>  <li>Coffee</li>  <li>Tea</li>  <li>Milk</li></ul>

The <ul> tag defines an unordered (bulleted) list. Use the <ul> tag together with the <li> tag to create unordered lists.

37

Page 38: Saiku Viva Documentation

References

Berners-Lee, Tim; Connolly, Daniel (June 1993). “Hypertext Markup Language (HTML) Internet Draft version 1.2”. IETF IIIR Working Group. Retrieved 18 September 2010.

Berners-Lee, Tim; Connolly, Daniel (28 November 1994). “HyperText Markup Language Specification – 2.0 INTERNET DRAFT”. IETF. Retrieved 24 October 2010.

Connolly, Daniel (6 June 1992). “MIME as a hypertext architecture”. CERN. Retrieved 24 October 2010.

Connolly, Daniel (15 July 1992). “HTML DTD enclosed”. CERN. Retrieved 24 October 2010.

Connolly, Daniel (18 August 1992). “document type declaration subset for HyperText Markup Language as defined by the World Wide Web project”. CERN. Retrieved 24 October 2010.

Connolly, Daniel (24 November 1992). “Document Type Definition for the HyperText Markup Language as used by the World Wide Web application”. CERN. Retrieved 24 October 2010. See section “Revision History”

Cs.Tcd.Ie. Cs.Tcd.Ie (2000-05-15). Retrieved on 2012-02-16. Doug Engelbart’s INVISIBLE REVOLUTION. Invisiblerevolution.net. Retrieved on

2012-02-16. Freeman, E (2005). Head First HTML. O’Reilly. “HTML 4.0 Specification”. World Wide Web Consortium. April 24, 1998. Retrieved

November 16, 2008.

“HTML 4.01 Specification”. World Wide Web Consortium. December 24, 1999. Retrieved November 16, 2008.

HTML Design Constraints, W3C Archives “ISO/IEC 15445:2000 – Information technology – Document description and processing

languages – HyperText Markup Language (HTML)”. Retrieved December 26, 2009. Jakob Nielsen (January 3, 2005). “Reviving Advanced Hypertext”. Retrieved June 16,

2007. Sauer, C.: WYSIWIKI – Questioning WYSIWYG in the Internet Age. In: Wikimania

(2006) Ted Nelson (29 January 1999). “Ted Nelson’s Computer Paradigm, Expressed as One-

Liners”. Xanadu. Retrieved 26 July 2010. WWW:BTB – HTML, Pris Sears Spiesser, J., Kitchen, L.: Optimization of html

automatically generated by WYSIWYG programs. In: 13th International Conference on

38

Page 39: Saiku Viva Documentation

World Wide Web, pp. 355—364. WWW ‘04. ACM, New York, NY (New York, NY, U.S., May 17–20, 2004)

XHTML Reference: blockquote. Xhtml.com. Retrieved on 2012-02-16.

4. Query Transformation

39

Page 40: Saiku Viva Documentation

4.0 Query Transformation

4.1 Steps

1. Name resolution

Transforming object names into internal names

2. Semantic analysis

Checking for global relations and attributes, view expansion, global access control

3. Normalization

Transforming predicates into a canonical format

4. Simple algebraic rewriting

Application of heuristics to eliminate bad plans

40

Page 41: Saiku Viva Documentation

4.1.1 Semantic analysis

Check if the global schema defines all attributes and relations referenced in the query.

If the query is formulated on a view, replace references to relations/attributes with references to global relations/attributes.

Perform simple integrity checks, e.g., are the types of attributes used in comparison predicates of the same type?

Initial check if the query has the rights to access referenced relations/attributes.

41

Page 42: Saiku Viva Documentation

4.1.2 Normalization

Objective:

Simplification of the following optimization by transforming the query into a canonical format

Selection and join predicates Conjunctive normal form vs. disjunctive normal form Conjunctive normal form:

(p11 _ p12 _ _ _ _ _ p1n) ^ _ _ _ ^ (pm1 _ pm2 _ _ _ _ _ pmn)

Disjunctive normal form:

(p11 ^ p12 ^ _ _ _ ^ p1n) _ _ _ _ _ (pm1 ^ pm2 ^ _ _ _ ^ pmn)

Transformation based on equivalence rules for logical operators

Equivalence Rules

p1 ^ p2 () p2 ^ p1 and p1 _ p2 () p2 _ p1

p1 ^ (p2 ^ p3) () (p1 ^ p2) ^ p3 and p1 _ (p2 _ p3) () (p1 _ p2) _ p3

p1 ^ (p2 _ p3) () (p1 ^ p2) _ (p1 ^ p3) and p1 _ (p2 ^ p3) () (p1 _ p2) ^ (p1 _ p3)

:(p1 ^ p2) () :p1 _ :p2 and :(p1 _ p2) () :p1 ^ :p2

42

Page 43: Saiku Viva Documentation

:(:p1) () p1

Example

SELECT EName from Employees e, Assignment aWHERE e.EID = a.ENo AND Duration _ 3 AND (PNo='P1' ORPNo='P2')Selection condition in conjunctive normal form EID = ENo ^ Duration _ 3 ^ (PNo='P1' _ PNo='P2')

Selection condition in disjunctive normal form

(EID = ENo ^ Duration _ 3 ^ PNo='P1') _ (EID = ENo ^ Duration _ 3 ^ PNo='P2')

43

Page 44: Saiku Viva Documentation

4.1.3 Simple Algebraic Rewriting

Simple optimizations that are always beneficial regardless of system state

Cleanup operations

Elimination of redundant predicates

Simpli_cation of expressions

Unnesting of subqueries and views

Tasks:

Recognize and simplify all expressions/operations/subqueries that are \obviously" unnecessary, redundant, or contradictory.

Do not consider system state information, e.g., size of tables, existence of indexes, etc.

44

Page 45: Saiku Viva Documentation

References

D. Kossmann. The State of the Art in Distributed Query Processing, ACM Computing Surveys, Vol. 32, No. 4, 2000, S. 422-469.

M. Tamer Ozsu, P. Valduriez. Principles of Distributed Database Systems. Second� Edition, Prentice Hall, Upper Saddle River, NJ, 1999.

P. Dadam. Verteilte Datenbanken und Client/Server-Systeme. Springer-Verlag, Berlin, Heidelberg 1996.

Toby J. Teorey Database modeling and design Third Edition, Morgan Kaufmann Publishers, San Francisco, CA, 1999

45