Tuesday, January 31, 2012

Cable and DSL Options in the United States

Cable and DSL Internet Options in the United States

A short essay on decades of experience

I had a friend who had cable in her apartment complex for over a decade - she could download over cable, but she had to dial-up to the cable company via her telephone line in order to conduct her upload content! No cable supplied UPS for the internet or phone.

I have assisted multiple families with their cable set-up in the U.S. I have spoken to many college students who have cable. The complaints are all the same - on off-hours, it is fast, but when people are home, it is sloooowwww. Once they see other options working, they will often change to a non-cable service, to get better consistency with their service. No cable supplied UPS for the internet or phone.

I know another family who has Verizon FiOS, but when there is a power outage, the (VoIP) phone would only work for about 15 minutes. Fast internet access, video, phone - but performance during power outage at the fiber access point was sub-par.I supplied them with a massive UPS in the house for the FiOS TV/Telco/WiFi access point, the house could survive the outage, but the neighborhood could not - Verizon can't size a UPS to save their lives in a neighborhood fiber access point..

I know another family who has $19.95 DSL from the telco. For poor families, this is still an option, but it is unadvertized. It is not super fast, but it is usable for most purposes, including watching television over the internet from overseas. No UPS provided by the telco, but the POTS line still works during power outages. I provided a UPS for their computer and DSL - works great during outages.

I know another family who bought a house in a "future proof" community, with real fiber to the curb - every house had an RJ45. It started with T1 download speed for internet to every house, and never progressed beyond that. Those forward-thinking communities got stuck. Copper is a lot more flexible, it seems. Those families can not even get DSL or an copper-hybrid (FiOS or UVerse) alternatives - Cable is their only escape.

When I first bought DSL, the telco would not run it to my house, but I was able to get it through a third-party provider. It was fast enough and cheap. The analog POTS line was clear. During power outages, everything worked, great. I could never get the speed boosted beyond T1 download speeds. I provided my own UPS and had terrific reliability - even during long power outages. I kept it as long as I could, until the "need for speed" eclipsed usability. Overall, this was my favorite option.

I later moved to major telco DSL, because they offered higher speed than the third-party DSL that I was using. Honestly, my third party DSL was more reliable (rock-solid), but the additional speed was worth the migration to the new (slightly unreliable during rainstorms) service. I needed to add 2 VoIP lines, to my existing POTS line. I had my own (large) UPS and I could use my internet for over 6 hours during a long unexpected power outage.

I recently made the switch to ATT UVerse, which is pretty reasonable. I needed higher upload speed, to add a 3rd (non ATT) VoIP line. I use the phone and (fastest available) internet (without the video.) The telco phone appears to be a VoIP type connection, built into the same box which offers video. The telco telephone is reasonable and they included a UPS for the telephone/internet/wifi-gateway - we had some power short outages, but I don't know what the phone or internet performance will be like with >15 minute outages.

Overall, DSL/POTS in the U.S. is cheap and stable - my favorite. Former fiber offerings were premium but inflexible. Cable in apartment complexes is horrible (using POTS line for cable upload and losing your voice line during internet surfing over cable!) Cable in communities is fast, but slow during peak times. Newer fiber offerings, using copper to the home, seem to be a best-of-breed between Cable and traditional DSL... except Verizon couldn't keep a network up beyond 15 minutes, in my experience.

Thursday, January 26, 2012

JavaFX: Still Not Cross-Platform

JavaFX: Still Not Cross-Platform

2011 Update

The FXExperience blog, known to release information about JavaFX updates, blogged an article on May 22, 2011 titled "Is JavaFX 2.0 Cross Platform?"
That the beta is initially a windows-only beta has apparently stirred up a fair amount of concern. Shockingly, some people have even asked whether we ever intend to be cross platform. I can say definitively “Yes, of course!”... We absolutely will be targeting a whole host of different platforms, not even just the big three (Mac, Linux, Windows). The value of the Java platform is in the fact that you can write across multiple operating systems and devices.
2012 Update

A comment appeared on this old blog post:
Jonathan Giles
January 24, 2012 at 3:27 pm

You are aware that as of yesterday there is linux support in the JavaFX 2.1 dev preview release, right: http://fxexperience.com/2012/01/javafx-2-1-dev-preview-build-09-available-for-windows-mac-and-linux/
Right now, JavaFX is far from cross-platform, but it is a new client-side scripting platform, and it is getting better.

Million Dollar Question

The proverbial million dollar question is: WHEN WILL SPARC CLIENTS BE SUPPORTED???

The Network Management Connection

One of the most important aspects of technologies to Network Management frameworks have been rich client front-ends to manage millions of managed devices. Java has been used, Flash has been used, JavaScript on the client has been used, but JavaFX has been locked-out.

It looks like JavaFX will continue to be locked-out of enterprise frameworks, until someone on the JavaFX team decides that UNIX matters for Enterprise Network Management.

Monday, January 23, 2012

Virtualizations: LPARs, LDoms, Xen, KVM, VMWare, and HyperV

Virtualizations: LPARs, LDoms, Xen, KVM, VMWare, and HyperV

IBM LPARs is a premium proprietary virtualization technology which sits on top of IBM POWER architecture. It leverages the Virtual I/O Server (VIOS) in order to manage operating system resource requests from other domains.

"This allows a single machine to run multiple operating system (OS) images at the same time but each is isolated from the others. POWER4 based machines started this in 2001 by allowing many Logical Partitions (LPAR) to run on the same machine using but each using different CPUs, different memory sections and different PCI adapter slots. Next came with POWER4, the ability to dynamically change the CPU, memory and PCI adapters slots with the OS running. With the introduction of POWER5 in 2005, further Virtualization items have been added."
"The Virtual I/O Server is software that is located in a logical partition. This software facilitates the sharing of physical I/O resources between client logical partitions within the server. The Virtual I/O Server provides virtual SCSI target, virtual fibre channel, Shared Ethernet Adapter, and PowerVM™ Active Memory Sharing capability to client logical partitions within the system. As a result, client logical partitions can share SCSI devices, fibre channel adapters, Ethernet adapters, and expand the amount of memory available to logical partitions using paging space devices. The Virtual I/O Server software requires that the logical partition be dedicated solely for its use. The Virtual I/O Server is part of the PowerVM Editions hardware feature."

SPARC LDOM's or Oracle VM for SPARC
SPARC LDOM's (or now referred to as Oracle VM for SPARC) is analagous to IBM's LPARs. IBM's VIOS appears to be analagous to Control Domain under. The LDom Control Domain can be subdivided between Control, Service, and I/O Domains - to architect redundancy and additional performance in a SPARC platform. LDom's are a free Solaris SPARC bundled virtualization technology.

"Oracle VM Server for SPARC (previously called Sun Logical Domains) provides highly efficient, enterprise-class virtualization capabilities for Oracle's SPARC T-Series servers. Oracle VM Server for SPARC allows you to create up to 128 virtual servers on one system to take advantage of the massive thread scale offered by SPARC T-Series servers and the Oracle Solaris operating system. And all this capability is available at no additional cost."
"The Control domain, as its name implies, controls the logical domain environment. It is used to configure machine resources and guest domains... The control domain also normally acts as a service domain. Service domains present virtual services, such as virtual disk drives and network switches, to other domains… Current processors can have two service domains in order to provide resiliency against failures. I/O domain has direct ownership of and direct access to physical I/O devices, such as a network card in a PCI controller… Control and service functions can be combined within domains."
There are basic technologies available through LDOM's to developers and architects such as cluster-in-a-box, redundant I/O domains, etc.
"In this logical domains (LDoms) guest domain topology, a cluster and every node within that cluster are located on the same Solaris host. Each LDoms guest domain node acts the same as a Solaris host in a cluster. To preclude your having to include a quorum device, this configuration includes three nodes rather than only two."

There are some similarities to the way these former hypervisors and Xen is architected. Various implementations of Xen exist, such as Citrix Hypervisor, Oracle VM for x86, and OpenSolaris based Xen (now a project under Illumos.) Xen is an open-sourced hypervisor.

"A critical benefit of the Xen Hypervisor is its neutrality to the various operating systems. Due to its independence, Xen is capable of allowing any operating system (Linux, Solaris, BSD, etc) to be the Domain0 thereby ensuring the widest possible use case for customers. For example, many hardware manufacturers leverage NetBSD as their OS of choice for Domain0 and are able to deploy Xen in the manner of their choosing."

"This separation of hypervisor from the Domain0 operating system also ensures that Xen is not burdened with any operating system overhead that is unrelated to processing a series of guests on a given machine. In fact, more are beginning to break up the Domain0 from a single guest into a series of mini-OS guests each with a specific purpose and responsibility which drives better performance and security in a virtualization environment."

No, this is not a Keyboard switch. Late to the game was a Linux and OpenSolaris based virtualization technology, unfortunately called KVM, for Kernel Virtual Machine. First implemented under Linux.

Modern OS features such as DTrace and ZFS are now available to KVM after it was quickly ported to OpenSolaris source code base by Joyent for their Open Source SMARTOS cloud operating system and cloud offering
"Joyent has announced today they have open-sourced their SmartOS operating system, which is based on Illumos/Solaris. Additionally, this cloud software provider has ported the Linux KVM (Kernel-based Virtual Machine) to this platform.

Being derived from Illumos and in-turn from Solaris, SmartOS does ship with ZFS support, DTrace, and other former Sun Microsystems technologies."

Microsoft HyperV
Some vendors came very late to the hypervisor game. Microsoft HyperV have a similar architecture, available only under Intel & AMD processors, depend on hardware acceleration available under only certain CPU chips from both of those vendors.

VMWare has a great deal of experience in hypervisors, growing out of a software-driven solution, before hardware handlers became popular (and leveraged) in the Intel/AMD world. They provide some of the best backwards-compatibility in the Intel/AMD world.

Sunday, January 15, 2012

Mobile Computing: 2011 Summary

Mobile Computing: 2011 Summary

A Surprising Trend:

NetMarketShare published some interesting data, summarizing mobile OS usage in 2011 - Apple IOS and Google Android peaked while Oracle JavaME bottomed out in October 2011... but JavaME but reversed the trend, pushing Android into 3rd place in November and December 2011.

Between the Lines:
Android from Google uses Java Code stolen [improperly licensed] from now acquired Sun Microsystems, where Oracle is fighting to get their royalties restored. Android is little more than Linux combined with JavaSE. The combined Java mindshare in the mobile arena [combining Oracle's stolen JavaSE and JavaME] is almost equal to the Apple MacOSX UNIX based iOS.

Java is Competitive
The conclusion we can draw from this market share analysis is that Java on mobile clients is competitive. The uncertainty experienced by Android manufacturers continually being sued by operating system manufacturers and Google being sued by Oracle for Java license violations, however, continues to make Apple a secure ecosystem for developers.

The Future
With products used under Apple's iOS diversifying (i.e. iPad, iPhone, iPodTouch, AppleTV, etc.) - Apple iOS will remain competitive.

While JavaME manufacturers receive some indemnity (protection from lawsuits) - Android manufacturers have been giving more and more of their profit share to companies like Microsoft, whose patents were stepped on.

Once the Oracle lawsuit against Google has been settled, Java may be in a position to become more competitive, since the people who created the technology [JavaSE and JavaME], has cross-technology licensing agreements with Microsoft, and will be properly compensated, rather than a third-party [who is competing with their own Windows phone] sucks the profit well dry from Android.

ZFS: Versioning

ZFS Versioning

Most operating systems support a type of file system to retain it's data. When newer versions of the file system are released, sometimes it is not clear to the user community. With ZFS, the ability to clearly see what the version exists and even a clear way to create older pool types for backwards compatibility and testing.

Bob Netherton at Oracle published a blog article recently discussing ZFS Versioning. It is well worth the read. Below are a few commands extracted from Bob's article.

The "zpool" and "zfs" commands offer visibility to capabilities.

# zpool upgrade -v
This system is currently running ZFS pool version 31.

The following versions are supported:

--- --------------------------------------------------------
1 Initial ZFS version
2 Ditto blocks (replicated metadata)
3 Hot spares and double parity RAID-Z
4 zpool history
5 Compression using the gzip algorithm
6 bootfs pool property
7 Separate intent log devices
8 Delegated administration
9 refquota and refreservation properties
10 Cache devices
11 Improved scrub performance
12 Snapshot properties
13 snapused property
14 passthrough-x aclinherit
15 user/group space accounting
16 stmf property support
17 Triple-parity RAID-Z
18 Snapshot user holds
19 Log device removal
20 Compression using zle (zero-length encoding)
21 Deduplication
22 Received properties
23 Slim ZIL
24 System attributes
25 Improved scrub stats
26 Improved snapshot deletion performance
27 Improved snapshot creation performance
28 Multiple vdev replacements
29 RAID-Z/mirror hybrid allocator
30 Encryption
31 Improved 'zfs list' performance

For more information on a particular version, including supported releases,
see the ZFS Administration Guide.

# zfs upgrade -v
The following filesystem versions are supported:

--- --------------------------------------------------------
1 Initial ZFS filesystem version
2 Enhanced directory entries
3 Case insensitive and File system unique identifier (FUID)
4 userquota, groupquota properties
5 System attributes

For more information on a particular version, including supported releases,
see the ZFS Administration Guide.
As of Solaris Update 6, the following lists the zpool and zfs versions.

Solaris Release         ZPOOL Version ZFS Version
Solaris 10 10/08 (u6) 10 3
Solaris 10 5/09 (u7) 10 3
Solaris 10 10/09 (u8 15 4
Solaris 10 9/10 (u9) 22 4
Solaris 10 8/11 (u10) 29 5
Solaris 11 11/11 (ga) 33 5
Showing Versions:
A test pool can be made, in order to show the versions.

# zpool create testpool testdisk

# zpool get version testpool
testpool version 31 default

# zfs get version testpool
testpool version 5 -
Creating Older Pools:
Older pools can be created and versions validated.

# zpool destroy testpool
# zpool create -o version=15 -O version=4 testpool testdisk
# zfs create testpool/data

# zpool get version testpool
testpool version 15 local

# zfs get -r version testpool
testpool version 4 -
testpool/data version 4 -
Testing an Upgrade:
A version upgrade can be conducted and verified.

# zpool upgrade -V 29 testpool
This system is currently running ZFS pool version 31.

Successfully upgraded 'testpool' from version 15 to version 29

# zpool get version testpool
testpool version 29 local

# zfs upgrade -V 5 testpool
1 filesystems upgraded

# zfs get -r version testpool
testpool version 5 -
testpool/data version 4 -
Upgrading Recursively:
While the base pool can be updated, it is most likely that file system under the pool needed to be upgraded. This can be done via the recursive option.

# zfs upgrade -V 5 -r testpool
1 filesystems upgraded
1 filesystems already at this version

# zfs get -r version testpool
testpool version 5 -
testpool/data version 5 -

Thursday, January 12, 2012

The Network: Consuming More Data

The Network: Consuming More Data
With the creation of new devices, usage will normally increase. The creation of the original Apple iPhone saw a rise in data usage previously unknown to telephone carriers. With faster devices hitting the networks, capacity continues to increase with no bounds.

Data Usage:
Data usage on wireless network carriers was measured. The iPhone 3G was used as a base unit of measurement.
iPhone 3G -> iPhone 4 = 1.6x increase
iPhone 3G -> iPad 2 = 2.3x increase
iPhone 3G -> iPhone 4S = 3x increase

Network Speed:
AT&T was generally shown as faster than Verizon.

Network Coverage:
Verizon was generally shown to have wider coverage than AT&T.

Next Generation 4G:
Verizon started rolling out 4G services in December 2010.
AT&T brought 4G to 15 cities by end of 2011.
AT&T expanded 4G to a total of 26 cities in Jan 2012.

Tuesday, January 10, 2012

Microsoft Phone: Reaction to iPhone

Microsoft Phone: Reaction to Apple iPhone

Microsoft failing in the consumer/mobile arena. With operating systems like Windows CE, it is no wonder. Microsoft may finally have a winning mobile system. The innovation forced upon them was a reaction driven by Apple's wildly successful iPhone.

What's New:
Microsoft and Nokia is about to release, at 2012 International Consumer Electronics Show, in Las Vegas, Nevada, USA. Nokia's new phone is described as a sleek metallic phone. The Lumia 900 sports a Microsoft Windows mobile operating system and will be sold by AT&T in the United States.

Is it enough?
With Nokia killing it's home-grown phone operating system and Microsoft taking a front-seat in software development for Nokia, this could be a two-headed monster or an elegant solution desired by everyone. Consumers will make this decision over the next year.

Sunday, January 8, 2012

Windows 8: Getting More ZFS'ish

Windows 8: Getting More ZFS'ish

Storage has always been a part of operating systems. Over time, storage capabilities have increasingly became more sophisticated in operating systems, consuming features from 3rd party partners. Occasionally, a vendor will release very sophisticated increments to their operating systems. Windows 8 is projected to receive more ZFS-like features, to make it more competitive with Solaris, when Sun release ZFS over a half-dozen years ago.

Intel based systems had relied upon a file system referred to as FAT since the late 1970's. Systems during this time period occasionally offered only upper case characters, FAT was case insensitive. During the 1980's, FAT16 was released, to deal with larger hard drives. The 1990's saw the introduction of FAT32, to deal with longer file names. These file system were, for the most part, primitive - targeting floppy disks and hard disks, identifying physical storage through a letter of the alphabet.

Microsoft, the key Intel based operating system vendor, promised an Object Oriented file system during the 1990's and a Relations Database filesystem during the 2000's. Both of these projects were canceled, with an interim file system called NTFS, to drag users out of the proverbial stone ages. NTFS was too proprietary bound to the Microsoft operating system) and too heavy to bring to portable storage devices, like camera flash cards and USB flash sticks, which still carry the baggage of the ancient FAT file system.

Most UNIX systems included file system management bound to individual disks during the late 60's and into the early 1970's, but they quickly moved to a virtual file system, allowing disks to be added (mounted) anywhere in a single tree, transparent to the applications. During the 1980's, Sun Microsystems extended this abstraction to virtualize the file system to network based devices, as well as physical devices. Third-Party vendors, like Veritas, created Logical Volume Management systems with their own third-party file systems, to consolidate multiple physical disks into a single virtualized physical device.

Sun Microsystems introduced in 2005 the first major advancement in file system technology, in decades. Gone was the forcing of users to use separate drive letters of DOS and NTFS to desgnate physical devices; gone was separate volume management system to virtualized multiple physical devices into a seeing device; gone was separate file system layer to sit on top of a virtual or physical device. ZFS was created to take operating systems into the next decade, with aspects consolidating a hybrid 64-128 bit internal structures.

Windows 8 Storage Spaces:
Microsoft quietly announced new features in a Windows 8 Beta via a blog post. The Register published a short article regarding Storage Spaces.
Microsoft will introduce in Windows 8 what it calls
Storage Spaces – a method of putting drives into a
virtual pool from which self-healing virtual disks
can be created, with some resemblance to ZFS features.

Details of these virtual disks – the aforementioned
Storage Spaces – were described in a 4,400-word
deep-dive blog poston Thursday, introduced by
Microsoft Windows Division head, Steven Sinofsky,
and written by a member of Redmond's Storage
and File System team, Rajeev Nagar.
How robust will the new system be, if it is released in Windows 8 Beta?
Storage Spaces is somewhat like ZFS, although it has no
deduplication and lacks other ZFS features. However, it is
a start – and Microsoft will probably add features such as
snapshots, replication, deduplication, and, maybe, compression.
The Register posted an article where Open Source OpenSolaris based Nexenta discusses Windows 8 Storage Spaces.
Windows 8 Storage Spaces papers over some previous
shortcomings, but does not solve a limit on the total
TB that a file system can store, which is 16TB. It
still lacks double or triple parity RAID, which means
your data is at risk since the odds of two failures
on a RAID group, and data loss, increases with large
drives that take more time to rebuild. There is also
no ability to snapshot and replicate your data.
Finally, there is no end-to-end data integrity -
there’s nothing like the cryptographic-strength
256 bit checksums of ZFS-based solutions like NexentaStor.
Will Microsoft's new Storage Spaces be able to displace NTFS or even FAT, or will Storage Spaces find itself in the company of former Microsoft Object or Relational file systems? This question will be ultimately answered in 10 more years.

Microsoft has a long history of trying to innovate and failing in storage. Microsoft has a long way to catch up. With virtually unlimited resources derived from a PC monopoly and constant inbound royalties from ancient FAT - they can not be counted out.

Network Management:
What will be the impact on Network Management? Nothing, if Storage Spaces follows other storage advancements.

Will Microsoft implement it's storage technologies with management extensions directly to SNMP, to make it truely network friendly?

Microsoft has the possibility to take leadership away from new ZFS owner, Oracle, on the Internet, if true SNMP management is taken into consideration. If not, Microsoft will be left a half-dozen year in the rears, continuing to play catch-up with the market leader.

Friday, January 6, 2012

Java: JavaScript Object Notation (JSON) Coming!

Java: JavaScript Object Notation (JSON) Coming!

Variables and structures are normally held in various internal formats on different systems. Normally, this format is incompatible between programming paradigms. JavaScript Object Notation is one such notation, which has found popularity in the transfer of data as lighter-weight mechanism in comparison to XML. Java will soon be including native JSON support.

JSR 353: JavaTM API for JSON Processing
Java Specification Requests 353 was filed and accepted by the Java Community Process Program. It was summarized as:
The Java API for JSON Processing (JSON-P) JSR
will develop a Java API to process (for e.g.
parse, generate, transform and query) JSON.
A more complete description was also included:
JSON(JavaScript Object Notation) is a lightweight
data-interchange format. Many popular web services
use JSON format for invoking and returning the data.
Currently Java applications use different implementation
libraries to produce/consume JSON from the web services.
Hence, there is a need to standardize a Java API for JSON
so that applications that use JSON need not bundle the
implementation libraries but use the API. Applications
will be smaller in size and portable.
Network Management Implications
Many Network Management platforms have been using Java as their back-end engine, in order to stay compatible with the greatest number of data center infrastructures possible. For some mobile platforms, such as the iPad and iPhone, Java based front-ends are not adequately supported. This is driving many vendors to move towards JavaScript based front-ends, requiring other vendors to provide JSON parsing modules. The inclusion of JSON will reduce the reliance upon other JAR files and make JSON a full-fledged peer in the data-interchange arena for Java for Network Management platforms.

Sunday, January 1, 2012

Apple iPad3: Super Detail - Great and Small

Apple iPad3: Super Detail - Great and Small

Tablet computing was attempted by various hardware, software, and operating system vendors in the past - but never really progressed outside of the realm of industrial equipment. Apple released the first iPad and managed to create a new consumer market, with a simple interface, wrapped in elegant packaging. There are rumors of soon to be released iPads - for simplicity, we will call them iPad3's.

[2011-10-17] - Apple rumored to be manufacturing 1 Million iPad3
[2011-11-17] - Apple reducing orders of iPad2 screens
[2011-11-18] - iPad3 screens increase from 1 to 2 Million; Smaller screen coming
[2011-11-21] - iPad3 production started: 2048x1536 detail; 10 inch and 7.85 inch
[2011-12-29] - Apple iPad2 supply chain orders dropping slightly
[2011-12-29] - Apple iPad3 in January with 2x battery: 14AH vs 6.5AH
[2011-12-29] - Two iPad's to be released in Jan: 9.7 inch and 7.85 inch
[2012-01-06] - Apple iPad3 in March; iPad4 in October? *updated 2012-01-08*
[2012-01-06] - Apple iPad3 rumor true; iPad4 rumor false? *updated 2012-01-08*

Network Management Implications:

With the continued penetration of the Apple iPhone and Apple iPad into the market, customers increasingly desire network management platforms which offer robust HTML front-end interfaces vs Java based front-end interfaces.

Network Management providers should be concentrating and upgrading their customer interaction portals to be compatible with non-Microsoft based personal computers. Apple iPhone and iPad platforms have proved to be no passing fad, but a preferred method of access for consumers and professionals alike.