If you are coming from the wild east, chances are you have problems with paying loads for certification exams: a CCNP can easily cost 3 times $150. And if your company doesn't pay for it, but instead it comes out of your lunch money, this can hurt. Been there, done that, wasn't funny.
Good news is, more networking vendors are starting on the "fast-track" course, providing you with short and cheap options to migrate your CCNA to their gear. Brocade is no exception, and they are still running the course, where you get BCNE training+exam for $100. I even blogged about this a while back.
Brocade has two levels of certifications: Accreditation and Certification.
Accreditation exams include the IP Specialis (BAIS), the Campus Networking Specialist (BACNS), WLAN Specialist and my new favorite, the Physical Security Specialist, which I consider a fresh, new and actually useful thing. These are basically web-based exams for $20. Fair enough.
Certification exams are the usual drill: proctored by Pearson VUE, multiple choice and they cost $150. Here comes the good part again: once you have a few of accreditations, you could join the various Brocade certification groups on LinkedIn; I assume you're already a member and all. Now this is where things happen: sometimes you can get deals on certification exams. So far I managed to get all 3 of my certs for free (with 4th possibly on the way), which I consider fairly cheap. Also, the guys are fairly helpful if you need help with your exams.
Training material: Brocade University runs some free web courses, and free assessment tests for the certification exams. Other goodies include "Nutshell" study guide PDFs and documents on the MyBrocade pages. Also recommended is the old Foundry mailing list, and possibly picking up an old FWS24 on eBay, as they are dirt cheap and decent boxes.
Disclaimer: yes, this has been a partially sponsored post, but it's good for you, so it's okay.
Tuesday, April 23, 2013
Sunday, April 14, 2013
Resilient backbone with stacked 3Com 4050 and D-Link DGS-3324SR
As part of our network resiliency project, we decided to deploy a redundant trunk connection between the main and secondary server rooms. The main room houses our core 3Com 4050 cluster, and the secondary has a pair of D-Link DGS-3324SR boxes. Both of them support multi-chassis trunking, which is very nice of them.
3Com 4050 clustering
The 40x0 series supports the 3Com XRN stack technology, which can be implemented for long-distance on a GBIC, or short-distance with an XRN fabric module (which we use). Here comes the XRN fabric FAQ:
D-Link DGS-3324SR cluster
This platform supports clustering more than 2 switches, using HDMI-like stacking cables. You can use linear or loop topology. Stack bandwidth is 10Gbps.
Multi-chassis aggregation is supported, I just had some issues with the 'traffic segmentation' feature. The GUI only reported "error", the CLI was more helpful. Traffic distribution can be configured system-wide for a combination of MAC/IP, source/destination/source+destination. No such thing as the 'ILF' on the 3Com, traffic will leave the ports based on the hash.
Plugging in the wires
Both switches support LACP and static, I went with static. I had some RSTP issues earlier between them, so vlan1 untagged on both sides is a must, even if you use something else as the management vlan. I even managed to achieve extra redundancy by not using the same 8 core fiber for both connections, but routed one of them through another building.
Monitoring
The 3Com provides an SNMP object for the XRN fabric interfaces, so you can monitor the bandwidth of the stack link (no such thing on the DGS), but it won't provide an SNMP object for the aggregated AL1-13 interfaces. MRTG can be configured to do basic arithmetic, so you can measure the bandwidth of multiple aggregated links together.
3Com 4050 clustering
The 40x0 series supports the 3Com XRN stack technology, which can be implemented for long-distance on a GBIC, or short-distance with an XRN fabric module (which we use). Here comes the XRN fabric FAQ:
- The fabric bandwidth is 8Gbps;
- Link aggregation (trunking) uses IP-based hashing, or falls back to MAC-based hashing. It's not configurable;
- Distributed link aggregation has "Intelligent Local Forwarding": it tries to avoid using the fabric link if possible. If a frame was received on switch1, it'll use a link aggregation member link on switch1, not on switch2. This can lead to some asymmetric traffic flows.
D-Link DGS-3324SR cluster
This platform supports clustering more than 2 switches, using HDMI-like stacking cables. You can use linear or loop topology. Stack bandwidth is 10Gbps.
Multi-chassis aggregation is supported, I just had some issues with the 'traffic segmentation' feature. The GUI only reported "error", the CLI was more helpful. Traffic distribution can be configured system-wide for a combination of MAC/IP, source/destination/source+destination. No such thing as the 'ILF' on the 3Com, traffic will leave the ports based on the hash.
Plugging in the wires
Both switches support LACP and static, I went with static. I had some RSTP issues earlier between them, so vlan1 untagged on both sides is a must, even if you use something else as the management vlan. I even managed to achieve extra redundancy by not using the same 8 core fiber for both connections, but routed one of them through another building.
Monitoring
The 3Com provides an SNMP object for the XRN fabric interfaces, so you can monitor the bandwidth of the stack link (no such thing on the DGS), but it won't provide an SNMP object for the aggregated AL1-13 interfaces. MRTG can be configured to do basic arithmetic, so you can measure the bandwidth of multiple aggregated links together.
Sunday, February 10, 2013
HP MASE (and ASE) Networking practice exams
While still working on my ASE and MASE certifications, HP sent some good news into my inbox a few weeks ago: online practice exams!
Not free, but not too expensive: $50 for "developed markets" and $20 for "emerging markets", based on your login IP; you can take them 5 times within 1 year.
At the moment they only have 2 exams for the MASE level, but I'd guess if you ace your MASE practice, chances are you'll manage your real ASE exam just fine.
The official HP page is: http://h10120.www1.hp.com/certification/practice_exams.html
HTML5 video live streaming with ffmpeg and mediaelement.js, Round 1
In the era of HD home-videos on YouTube, our current delivery method for online classes in low quality Flash videos is getting kinda unacceptable, especially for maths-type subjects, where it would be nice to actually all those numbers and figures on the whiteboard.
So, enter HTML5 video, H.264, mpeg4 and possibly a new encoding server... Our main problem is that we want to print some custom stuff on the videos, so we need to encode them in realtime.
The player of choice is mediaelement.js, because it comes with the promise on the tin that it just works. Just how we like it.
So, after checking out the samples, the player code looks like this:
<video controls="controls" height="360" id="player2" width="480">
<source src="relay_video.php?quality=0&id=1469&format=mp4" title="mp4" type="video/mp4"></source>
<source src="relay_video.php?quality=0&id=1469&format=ogg" title="ogg" type="video/ogg"></source>
<source src="relay_video.php?quality=0&id=1469&format=wmv" title="wmv" type="video/wmv"></source>
<object data="flashmediaelement.swf" height="360" type="application/x-shockwave-flash" width="480">
<param name="movie" value="flashmediaelement.swf" />
<param name="flashvars" value="controls=true&file=relay_video.php?quality=0&id=1469&format=flv" />
<!-- Image as a last resort -->
<img src="noflash.jpg" width="480" height="360" title="No video playback capabilities" />
</object>
</video>
So far so good, let's give it some video files. Transcoding happens on-the-fly either with mencoder or ffmpeg. As we prefer ffmpeg, let's try to do everything with that.
Large parts are from John's ffmpeg post here:
http://johndyer.name/ffmpeg-settings-for-html5-codecs-h264mp4-theoraogg-vp8webm/
Problem 1: we don't have libvpx support compiled in; for the time we'll try to live without it.
Problem 2: old IE versions. They should at least have native support for WMV, either with Silverstripe or otherwise. FFmpeg supports WMV, so this might actually work.
Problem 3: This is a hard one: ffmpeg can't mux into mp4 on a non-seekable output (ie. socket). Wikipedia tells me that WebM is actually based on Matroska. FFmpeg loves Matroska, we can do this.
So, our current format - container - vcodec - acodec groups are as follows:
mp4 - matroska - libx264 - libfaac
ogg - ogg - libtheora - libvorbis
wmv - asf - wmv2 - wmav2
flv - flv - flv - libmp3lame
And: it works so far! The Mozilla guys are open source believers, so Firefox automatically selects ogg. Chromium uses mp4, or in absence of that, falls back to ogg. A few things to try: iPhones might possibly not like the Matroska container, but supposedly they can do mpegts. Problem with that is that Chromium does not work with that, but doesn't fall back to ogg either.
So for that, I'll try:
mp4 - mpegts - libx264 - libfaac
webm - matroska - libx264 - libfaac
Other problems might arise while finding ancient IE version to test with, and maybe on OS X. If I find more out, there'll be a round 2 of this post.
So, enter HTML5 video, H.264, mpeg4 and possibly a new encoding server... Our main problem is that we want to print some custom stuff on the videos, so we need to encode them in realtime.
The player of choice is mediaelement.js, because it comes with the promise on the tin that it just works. Just how we like it.
So, after checking out the samples, the player code looks like this:
<video controls="controls" height="360" id="player2" width="480">
<source src="relay_video.php?quality=0&id=1469&format=mp4" title="mp4" type="video/mp4"></source>
<source src="relay_video.php?quality=0&id=1469&format=ogg" title="ogg" type="video/ogg"></source>
<source src="relay_video.php?quality=0&id=1469&format=wmv" title="wmv" type="video/wmv"></source>
<object data="flashmediaelement.swf" height="360" type="application/x-shockwave-flash" width="480">
<param name="movie" value="flashmediaelement.swf" />
<param name="flashvars" value="controls=true&file=relay_video.php?quality=0&id=1469&format=flv" />
<!-- Image as a last resort -->
<img src="noflash.jpg" width="480" height="360" title="No video playback capabilities" />
</object>
</video>
So far so good, let's give it some video files. Transcoding happens on-the-fly either with mencoder or ffmpeg. As we prefer ffmpeg, let's try to do everything with that.
Large parts are from John's ffmpeg post here:
http://johndyer.name/ffmpeg-settings-for-html5-codecs-h264mp4-theoraogg-vp8webm/
Problem 1: we don't have libvpx support compiled in; for the time we'll try to live without it.
Problem 2: old IE versions. They should at least have native support for WMV, either with Silverstripe or otherwise. FFmpeg supports WMV, so this might actually work.
Problem 3: This is a hard one: ffmpeg can't mux into mp4 on a non-seekable output (ie. socket). Wikipedia tells me that WebM is actually based on Matroska. FFmpeg loves Matroska, we can do this.
So, our current format - container - vcodec - acodec groups are as follows:
mp4 - matroska - libx264 - libfaac
ogg - ogg - libtheora - libvorbis
wmv - asf - wmv2 - wmav2
flv - flv - flv - libmp3lame
And: it works so far! The Mozilla guys are open source believers, so Firefox automatically selects ogg. Chromium uses mp4, or in absence of that, falls back to ogg. A few things to try: iPhones might possibly not like the Matroska container, but supposedly they can do mpegts. Problem with that is that Chromium does not work with that, but doesn't fall back to ogg either.
So for that, I'll try:
mp4 - mpegts - libx264 - libfaac
webm - matroska - libx264 - libfaac
Other problems might arise while finding ancient IE version to test with, and maybe on OS X. If I find more out, there'll be a round 2 of this post.
Saturday, January 26, 2013
Linux filesystem overhead comparison
I needed some temporary data storage for a few days for a migration project, so I wanted to know which filesystem to use, that would give me the most available space.
I'm not considering security, journals or anything here, I just need the maximum amount of space possible. Tests were done on a 2TB SAS disk in a Dell MD1000 array, configured as a one disk RAID0 on a PERC5e controller. The tested ones are the most basic Linux compatible filesystems, by no means is this test academic or universal. The results did surprise me a bit:
I expected FAT to be among the top ones, as it's not a very sophisticated fs, and didn't expect much from ext2/3. I'm also a bit biased towards XFS, so I kind of expected better results.
Tests were done with default mkfs.* settings, only exception is root reserved blocks on ext2/3, which were set to 0. The above output is from df -m. I didn't always pay attention in Operating systems class, so the results of minix surprised me a bit.
I have a sort of love-hate relationship with reiserfs, but for today, it earned itself a job.
Subscribe to:
Posts (Atom)

