[#sanabbr]: SAN
See: storage area network.
[#sandbox]: sandbox

This term may be used as a noun or a verb. First, a discussion on being used as a noun: a sandbox is an environment which is tightly controlled, and which traditionally means that whatever happens in the sandbox does not substantially effect what happens outside of the sandbox, and vice versa.

The analogy is meant to refer to a computer program as if the program was a toddler who is allowed to play in a sandbox, but who is not allowed to interact with the potentially dangerous world outside of the controlled sandbox. The sandbox which is meant to be thought of as a controlled (and usually refers to a more “safe”) environment. The toddler is allowed to play in the sandbox, and to use the authorized (“safe”) toys that have been placed in the sandbox for the toddler to play with. Although in real life sand could get into a toddler's eye or be an unlikely choking hazard, the idea of this analogy is that the sand and the air being breathed are considered to be perfectly safe. The toddler is not allowed to leave the sandbox without permission. The toddler is definitely not allowed to play with dangerous objects which are located well outside of the sandbox. The toddler may be able to do some wild and crazy things in the sandbox, like push all of the sand to just one side of the sandbox, but as long as everything remains in the sandbox, the results are not likely to be problematic.

If things go too berzerk in the sandbox, an enforcer (e.g. a parent) can intervene. Perhaps the toddler became hurt, quite possibly through self-infliction. If the most dangerous object is a giant inflatable beach ball, the extent of the injury is likely to be minor, and within acceptable limits. (In contrast, if the toddler were left to run amuck in some other environments, the problems could be more catastrophic.)

When this toddler stops playing in the sandbox, an enforcer routinely makes sure that the environment, including the authorized toys, are cleaned, prepared for later use. Then all that will remain are the authorized toys, which were designed to function with a toddler and so are likely to still be unharmed, perfectly functional for the same toddler or for another toddler to be able to play with later.

For example, if a JavaScript program is downloaded from a web page, and gets run automatically, that program may be able to interact with the graphics on the web page. However, to the degree that the sandboxed model is being enforced, the program should not be able to modify most files in most locations of the storage device of the computer running the web browser. The program should not be able to modify most sections of memory of the of the computer running the web browser. There may be exceptions: the program might be able to modify a locally stored “cookie”, or a variable that is being tracked by the web browser's JavaScript engine. In that case, the cookie file and the memory storing that variable are meant to be modifiable, so they are part of the controlled environment known as the “sandbox”. However, there are some tight controls to prevent the program from being able to operate outside of the sandbox. Once the JavaScript program stops running, the “enforcer” (which is is the JavaScript engine; basically part of the web browser) can “clean” the area by re-initializing the memory.

There can be some problems: a JavaScript program may be able to get up and start running. If the enforcer is on top of things, the toddler may be stopped quickly. If we imagine a very large sandbox, the toddler may even be stopped before leaving the sandbox. However, sometimes one of the toys might include an escape tunnel/hatch. Such a toy isn't quite as safe as what was being hoped when the toy was placed in the sandbox. If the toddler does manage to escape the boundaries of the sandbox, hopefully the enforcer will notice before the toddler runs off and starts doing damage to the outside environment.

The toddler, in this analogy, is basically a computer program. Computer programs are regularly terminated; another term commonly used by technicians is to “kill” the program. If a computer program is getting too far out of line, an enforcer (like a JavaScript engine, or an operating system) may decide to simply kill the program. At this point, the toddler analogy clearly fails to be appropriate.

Another phrase for the same sort of concept is “jail” (especially when used with FreeBSD). Although most parents might not want their child to need to experience a jail, unlike a sandbox which a parent may very willingly introduce the child to, the concept is roughly the same. The jail is a controlled environment which cannot be escaped. However, the jailbird (meaning: the prisoner) may sit or stand or lie down, and may or may not twiddle her thumbs: the person may do whatever the person wants within the tightly controlled environment as long as the person isn't seeming to cause noticed trouble.

Another term, quite similar/identical, is “chroot” (which may be used more frequently as a verb than a noun).

The terms may be used as a noun (e.g., a “sandbox”) to refer to the environment, or as an verb (especially to turn that verb into a past tense, and treating it as an adjective: e.g. creating a “sandboxed environment”). The definition of the verb would be to make a situation become surrounded by the noun. (e.g., to jail a process means to put the process in a jail.) This simply means creating (designing) and implementing (using) automated controls over a situation, so that whatever happens in the sandbox has limits so that things outside of the sandbox are not impacted.

[#schadenf]: Schadenfreude

Although not strictly a technical term in nature, technical people often enjoy doses of this. (The word itself was noticed on Michael Lucas's story of needing a traffic shaper, the article itself being the subject of OpenBSD Journal@Undeadly.org's “Memoirs of a Network Disaster”. ][Cyber Pillar][ has been known to make multiple references to this word.

Somehow, the German word seems to have become more well known in America than the corresponding English word, epicaricacy.

[#sctp]: SCTP/ScTP
SCTP : Stream Control Transmission Protocol
A layer 4 communication protocol that provides functionailty similar to TCP and UDP. (RFC 4960, RFC 3286 : An Introduction to the Stream Control Transmission Protocol (SCTP), Wikipedia's article on Stream Control Transmission Protocol
Screened twisted pair - cabling that uses copper wire that is twisted, and which also provides more EFI-resisting insulation than STP (shielded twisted pair).
[#server]: server

There are a few common meanings to the word “server” which are distinct, although they are all quite related.

software service

Software which is designed to serve. An example would be software designed to act as a “web server”, such as nginx or Apache or Microsoft's IIS (which has stood for “Internet Information Server”, but may also have the name “Internet Information Services”), the BIND DNS server, or an SMTP server for E-Mail.

device meant to provide a service
computer running a server (providing services)

The virtual or physical computer that actually runs the software, when the software itself can also be called a “server”. For instance, a “file server” may provide files.

A dedicated physical device

A “print server” may be helpful to allow devices to print. One example may be a small device that is designed to connect to an Ethernet network, and then is able to connect to printers that might not support Ethernet connectivity. Computers on the network may then connect to this sort of device which is highly specialized for the purpose of assisting with printing.

When compared to the role of a “client”, the role of being a “server” tends to be more helpful in providing services, often being a more centralized device. For example, Wi-Fi devices may be able to connect in “adhoc” mode, which is also known as “peer-to-peer” (“P2P”). However, using a “client/server” variation (by connecting to a “BSS”) is a far more common method for a Wi-Fi connection.

computer designed to provide services on a network

Perhaps a more clear term/phrase for this is “server-grade hardware”, although that term is (unpleasantly) longer.

Designed for providing network services. Perhaps the most distinguishing feature is redundant hardware, including RAID (multiple hard drives). Another common possibility may be multiple power supplies. Typically contains more processing power and memory than end-user workstations. There are two common forms. One is to be to have the server be 19 inches wide so that it fits in a “rack unit” rack. Another common form is to be similar to a tower used for personal computers, but often larger (perhaps 25%-50% larger in width, and height).

[#shadocpy]: Shadow Copy
Copying from RAM

Some code might be getting copied from ROM chips to RAM chips because the ROM chips were slower (and cheaper). Memory may be able to be reclaimed by adjusting options in the BIOS. References to “shadow copy” may be relevant.

Microsoft's Volume Shadow Copy

Unrelated to the phrase “shadow copy” as used by BIOS options. See info about Microsoft's VSC (Volume Shadow Copy)/VSS (Volume Shadow Copy Service).

[#sysintl]: SI

The “International System of Units” (a.k.a. “Le Systèem international d'unités”, abbrevated “SI”) defines a bunch of units, such as what is found in the metric system. They are also in charge of much of the usage of the standard prefixes used with the metric system.

SI prefix

In general, kilo means a thousand (1,000). As examples, a kilometer is 1,000 meters, a kilogram is is 1,000 grams, a kiloliter is 1,000 liters. Also, these examples exist for standards other than the metric units: a kilowatt is 1,000 watts.

The term “decimal”, referring to ten values for each digit after the “decimal point”, uses the prefix “deci”, which stands for “tenth”.

See also: Attack of the kibibits!

SI unit
[#slicedsk]: slice (of a disk)

This has been used by FreeBSD documentation when referring to MBR partitions. See: different types of partition terminology, glossary: partition.

[#smb]: SMB
[#svmsgblk]: Server Message Block

This is also known almost as widely as “CIFS” (which stands for “Common Internet File System”). Wikipedia's “History” section on the site's page on SMB says “Microsoft launched an initiative in 1996 to rename SMB to Common Internet File System (CIFS)”. However, since Microsoft later released SMB2 as a successor to SMB, it would seem even Microsoft hasn't left behind the name SMB.

Though technically considered an incorrect expansion of the SMB acronym (and Wikipedia's page on SMB does say “one should distinguish” between SMB and samba), this protocol is sometimes referred to as the “samba” protocol, likely since SMB is the protocol that samba was designed to support, and samba is easier to say than S M B, and the short word does include all the letters in the acronym.

The most common use of the SMB protocol is file sharing. This protocol is a popular implementation for sharing files since support for SMB is included with Microsoft Windows. The second most common use of SMB is sharing other objects, most commonly printers.

[#smbus]: SMBus

It is generally best to call this SMBus, rather than the shorter abbreviation of SMB, since SMB is more commonly referring to the “Server Message Block” protocol.

[#smariobr]: Super Mario Bros.
Computer experts have often been known to play video games, and so this trademarked phrase is a familiar phrase to many technicians.
[#slicedsk]: “slice” of a disk

This term may be used inconsistently in the BSD world. It seems that most commonly it refers to a usable location specified by computer's main method of segmenting a disk. For example, if using an MBR-style partition table, a slice could be a primary MBR partition or, if supported, a “logical drive” within an “extended partition”.

However, the term may be sometimes used (perhaps being misused?) to refer to a “BSDlabel/disklabel partition” segment as a slice (even on a system where the BSDlabel/disklabel partitioning all happens within another, larger partition such as an MBR partition).

Some examples of this term being used include:

[#sldstatd]: “solid state disk”/“solid state drive” (“SSD”)

Long term storage. The abbreviation “SSD” has been used to mean “solid state disk” or &ldquoq;solid state drive”; both terms refer to the same thing. For similar abbreviations referring to other technologies that pre-date widespread use of SSDs, see: FDD, HDD, ODD.

[#ssdabbr]: SDD

Abbreviation for solid state disk/drive.

(For similar topics, see: FDD, HDD, ODD.)

[#standard]: standard
adjective: standard

This refers to the concept of what is commonly used.

When working with computers, the word “standard” is more frequently used as a noun.


The term “standard” refers to a thing which is commonly used. The “thing” might be a software program, a specification (like a compatibility standard that hardware implements), or a concept.

Administrative term: standard

The term “standard” can refer to a concept that is different from some similar terms like “policy” or “procedure”. A standard refers to a defined, measurable result.

For example, a standard might specify that a “well-lit” room has at least seventy-five percent of the light bulbs lit up. This does not say that a room needs to be well-lit if there are at least a certain number of people in the room: that would be a policy. This does not specify how to accomplish the necessary tasks (like how to obtain a replacement light bulbs so that the company budget will pay for the light bulb and so that the needed people in a company can keep track of the current inventory of light bulbs). Such details would be a procedure. This is simply describing what is considered to be a well-lit room.

The term “standard” does not try to specify whether results should be obtained. However, a standard might help to describe results. This way, a policy can use a short phrase (the name of the standard) to easily describe a bunch of detailed results.

(This is a term that gets contrasted to other administrative terms like guidelines, policies, procedures, or processes.)

[#strarean]: storage area network (“SAN”)

Like a NAS, this provides data over the network. The key difference is that the protocols used are designed to support the concept of a remote device. A computer using a SAN may recognize the SAN as if it is a type of a device to store data, and may treat the SAN's hardware like a hard drive, including tasks like laying out partition boundaries. In contrast, a NAS typically just shares files and folders. If a file is deleted from a NAS, the NAS would simply report the unavailability of a file. With a SAN, data recovery/forensics might be more feasible, because the SAN gets treated much more like a hard drive. The approach of a SAN likely involves less overhead, but also is not likely to provide features like enforcing file-based security permissions.

Booting from a NAS is not commonly supported/feasible. Booting from a SAN may be.

[#struct]: struct

The term is meant to look like a short version of the word “structure”. A structure is used by computer programmers and is basically a custom-defined data type that acts like one or more variables. This is slightly different than an array, because an array is basically given one name, and then each memory spot in the array will consist of the exact same data type. (Each variable in an array may be given an identifier; most typically this would simply be a number or, in a “multi-dimensional array”, a combination of numbers.) In contrast, a structure may have variables of different types. Each variable is provided with a name for that variable.

Perhaps each variable inside a struct could be referred to as an “element” of the struct. The term “property” may often be used in today's vernacular, possibly having become popular after the popularity of object-oriented programming (“OOP”). (The concept of a struct was used in C, before OOP started becoming popular when C++ was introduced.)

For those who are familiar with the concept of a class (as related to objects), the concepts are definitely very similar. The only real difference is that the concept of a struct pre-dates any common usage of a class, and a class may contain things other than variables: most commonly a class may contain a method, but a class might also include other details such as inheritance. A struct is like a class except that it can only have “properties”

[#sony]: Sony

“Sony Corporation” is just one of the corporate names that carries the Sony brand name: Others include “Sony Computer Entertainment, Inc.” (“SCEI”), “Sony Computer Entertainment America” (“SCEA”), “Sony Music Entertainment”, and “Sony Online Entertainment”. Sony is blamed for “Bleem!”'s sad fate, and quite possibly Connectix's demise as well.

Some details about Sony entering the video game market: Making of playstation shows a SNES-like controller plugging into an early PlayStation model. “The main reason why the Sony brand wasn't really used in the early marketing of PlayStation was not necessarily out of choice, but it was because Sony's old guard was scared that it was going to destroy this wonderful, venerable, 50-yearold brand. They saw Nintendo and Sega as toys, so why on Earth would they join the toy business? That changed a bit after we delivered 90 per cent of the company's profit for a few years.” ([sic] on “5-yearold”, quoting Edge Magazine feature on making Playstation, modifying “?” to “'”).

[#splthrzn]: split horizon

The “split horizon” concept means that different people see different things based on their position. They might see the same thing differently. They might see entirely different things, and might not even see any of the same things.

Example: split horizon with DNS

A classic example is for DNS to share internal IPv4 addresses for systems that are on an internal network, and give out publicly accessible IPv6 addresses to systems that communicate to the DNS server by using a network's main publicly accessible Internet connection.

Supporting “split horizon” permits internal systems get to use the private IP addresses, while systems on the Internet are also given useful addresses. (The only real alternative is to allow internal systems to use public IP addresses. That is often infeasible for IPv4. Although some sort of NAT might theoretically allow those public IPv4 addresses to be somehow routed to internal locations, such a method would probably be more complicated than supporting “split horizon”.

[#stpabbr]: STP
  • Shielded twisted pair (or, perhaps, screened twisted pair, although screened twisted pair may also be abbrviated ScTP)
  • Spanning Tree Protocol
Subnet: Noun
Relative definition

A network which is a smaller part of a larger network. For example, a network containing 5 computers and a router could be a subnet of a larger (sub)network that contains 16 addresses. The larger subnet could also fit one other subnet of the same size (able to contain 5 computers and a router). By this definition, a subnet is really only called a “subnet” when it is compared to a larger network. For example, four /28 subnets could be part of two /27 subnets, and both of those could be part of a single /26 network. The group of computers using a /26 size would not be considered to be a subnet, unless it was ever being compared to a larger network.

Class-recognizing definition

An older definition, that some people may still prefer, compares any IPv4 “network” to the default network size for the IPv4 class being used. So, any group of addresses from the class B range (from through with a prefix length of /17 or larger would be a “subnet” of the default network. (Larger prefix lengths indicate that more bits are being used for the “subnet ID”, and this results in fewer bits for the nodes, so a larger prefix results in a smaller subnet.) By this definition, all /17 class B (or class A) “networks” would really, properly, be called “subnets”, because there is an implied comparison to the network that uses the default network size.

Any IPv4 “network” is considered to be a subnet if the size of the network is smaller than the default size for the IPv4 class being used. So, by this definition, any network using the class B range (meaning that it starts with an IPv4 address of 128 through 191) and has more than 16 “network ID” bits is really a “subnet” of the network using the default size of /16. According to this same definition, all /25 “networks” (with an IPv4 address that starts with a number of 223 or less, is properly called a “subnet”.

In practice, the “relative definition” is probably more useful, because there is so little benefit to recognizing the class sizes now that the IPv4 addresses is generally done in a classless way.

Subnet: Verb

To identify what smaller subnets will fit within a larger network. For example, figuring out that 192.168/24 contains both 192.168/25 and 192.168.128/25 would be subnetting.

To take a (sub)network and split it into multiple (smaller) subnets. The process may also involve making some calculations about how many subnet bits will be used for the new subnet size, and how many host bits will be left in the IP address, and how many nodes will be using up those host bits.

For related/similar definitions, see VLSM (“variable length subnet mask”) and/or CIDR (“classless inter-domain routing”) and/or supernetting.

For any network that is considered to be a subnet (by either definition), the first address of the subnet may properly be called a “subnet ID” (just like the first address of a full network may be called a “network ID”). Likewise, when a subnet is being used, the first bits of an IP address help to identify a “subnet ID” (instead of just a “network ID”), and so those bits are called the “subnet ID” bits.

A common formula for the number of usable host addresses is is (2^N)-2, where N represents the number of “host” bits. In practice, that formula results in a number that really describes the number of nodes, not the number of hosts, if the definitions used are the definitions from RFC 2460 (IPv6): Section 2 (Terminology). If one of those addresses ends up needing to be a router/gateway device, the number of hosts is one less than that (2^N-3). For an IPv4 /29 (or an IPv6 /125), there are 3 host bits. (An IPv4 address has 32 bits, so if 29 of those are subnet bits, that leaves 3 bits left that are host bits.) So, 2^3 is 8. If one of those addresses is used for a gateway device such as a broadband modem, that leaves 5 addresses usable for subnets.

[#supernet]: supernet
supernet: noun
A larger network that contains multiple (smaller) networks. (Or, perhaps the following phrasing is preferred: a larger network that contains multiple smaller subnets.)
supernet: verb

To identify what larger network will contain smaller subnets. For example, figuring out that 192.168/25 and 192.168.128/25 are both part of 192.168/24 would be supernetting.

See also: subnetting and CIDR (and VLSM).

[#switch]: switch

An electronics, a switch is a device that can be toggled between two positions, and which affects whether electrivity travels down a specific path. This may redirect the electricity to take one path instead of another. In many cases, this causes the electricity to be unable to flow down any viable path, causing the electricity to stop traveling. (The most classic example is a “light switch” which results in a light being turned off.)

In computer networking, the term “switch” most often refers to a specific hardware device which allows network communications to communicate. It effectively acts like a “splitter” for a network cable. See: switch.

[#switchlp]: switching loop

(This might also, perhaps, maybe, we-thinks, possibly, could, sometimes, simply be called a “switch loop”.)

This refers to when network connectivity (e.g. cables being plugged into one or more switches, or devices that are acting sufficiently similar to a switch) ends up causing traffic to go into a loop. Even if a hub is used, and a collision occurs, collision-handling may cause the traffic will be re-sent after the collision occurs. Because switches don't lower a TTL value (the way that a router does when traffic is placed onto a differnet subnet), a looped traffic frame may effectively become an “immortal”, as it will circulate the loop with no end.

This situation (a switching loop) may often be detected fairly quickly because it may cause a broadcast storm, leading to a failure of hardware to be able to effectively deliver traffic.